SandboxedSdkProvider
public
abstract
class
SandboxedSdkProvider
extends Object
java.lang.Object | |
↳ | android.app.sdksandbox.SandboxedSdkProvider |
Encapsula a API que o sandbox do SDK pode usar para interagir com os SDKs carregados nela.
O SDK precisa implementar esta classe abstrata para gerar um ponto de entrada para o sandbox do SDK e poder fazer uma chamada por ele.
Resumo
Construtores públicos | |
---|---|
SandboxedSdkProvider()
|
Métodos públicos | |
---|---|
final
void
|
attachContext(Context context)
Define o SDK |
void
|
beforeUnloadSdk()
Faz o trabalho necessário para que o SDK libere os recursos antes de ser descarregado. |
final
Context
|
getContext()
Retorna o |
abstract
View
|
getView(Context windowContext, Bundle params, int width, int height)
Solicita que uma visualização seja renderizada remotamente para o processo do app cliente. |
abstract
SandboxedSdk
|
onLoadSdk(Bundle params)
Faz o trabalho necessário para que o SDK comece a processar solicitações. |
Métodos herdados | |
---|---|
Construtores públicos
SandboxedSdkProvider
public SandboxedSdkProvider ()
Métodos públicos
attachContext
public final void attachContext (Context context)
Define o SDK Context
que pode ser recebido usando getContext()
. Isso é chamado antes de onLoadSdk(Bundle)
ser invocado. Nenhuma operação que exija um Context
pode
ser realizada antes disso, já que SandboxedSdkProvider#getContext
retornará nulo até que
esse método seja chamado.
Lança uma IllegalStateException se um contexto base já tiver sido definido.
Parâmetros | |
---|---|
context |
Context : o novo contexto base.
Esse valor não pode ser null . |
beforeUnloadSdk
public void beforeUnloadSdk ()
Faz o trabalho necessário para que o SDK libere os recursos antes de ser descarregado.
Essa função é chamada pelo gerenciador do sandbox do SDK antes de descarregar o SDK. O SDK
falha em todas as invocações no Binder anteriormente retornadas ao cliente por SandboxedSdk.getInterface()
.
O SDK não pode executar nenhuma tarefa de longa duração aqui, como E/S ou chamadas de rede.
getContext
public final Context getContext ()
Retorna o Context
definido anteriormente pelo SandboxedSdkProvider#attachContext
.
Esse resultado retornará nulo se nenhum contexto tiver sido definido anteriormente.
Retorna | |
---|---|
Context |
getView
public abstract View getView (Context windowContext, Bundle params, int width, int height)
Solicita que uma visualização seja renderizada remotamente para o processo do app cliente.
Retorna uma View
que vai ser envolvida por SurfacePackage
. O SurfacePackage
resultante é enviado de volta ao aplicativo cliente.
O SDK não pode executar nenhuma tarefa de longa duração aqui, como E/S ou chamadas de rede. Isso pode impedir que o SDK receba solicitações do cliente.
Parâmetros | |
---|---|
windowContext |
Context : o Context da tela que mostra a visualização
Este valor não pode ser null . |
params |
Bundle : lista de parâmetros transmitidos do aplicativo cliente que solicita a visualização
Este valor não pode ser null . |
width |
int : a visualização retornada é colocada como em uma janela com essa largura, em pixels. |
height |
int : a visualização retornada é colocada como em uma janela dessa altura, em pixels. |
Retorna | |
---|---|
View |
Um View que o sandbox do SDK transmite ao aplicativo cliente que solicita a visualização
Esse valor não pode ser null . |
onLoadSdk
public abstract SandboxedSdk onLoadSdk (Bundle params)
Faz o trabalho necessário para que o SDK comece a processar solicitações.
Essa função é chamada pelo sandbox do SDK depois que ele carrega o SDK.
O SDK vai realizar todo o trabalho para ficar pronto para processar as próximas solicitações. Ele não pode executar nenhuma tarefa de longa duração aqui, como E/S ou chamadas de rede. Isso pode impedir que o SDK receba solicitações do cliente. Além disso, ele não pode fazer a inicialização que depende do carregamento de outros SDKs no sandbox.
O SDK não pode fazer nenhuma operação que exija um objeto Context
antes que esse método seja
chamado.
Parâmetros | |
---|---|
params |
Bundle : lista de parâmetros transmitidos do cliente quando ele carrega o SDK. Pode ficar vazio.
Esse valor não pode ser null . |
Retorna | |
---|---|
SandboxedSdk |
Retorna um SandboxedSdk , transmitido ao cliente. O IBinder usado para criar
o objeto SandboxedSdk será usado pelo cliente para chamar o SDK.
Esse valor não pode ser null . |
Gera | |
---|---|
LoadSdkException |