SdkSandboxController

public class SdkSandboxController
extends Object

java.lang.Object (link em inglês)
   ↳ android.app.sdksandbox.sdkprovider.SdkSandboxController


Controlador usado pelo SDK carregado no sandbox para acessar informações fornecidas pelo sandbox do SDK.

Ele permite que o SDK se comunique com outros SDKs no sandbox e saibam o estado dos sdk que estão carregados no momento.

Uma instância de SdkSandboxController pode ser recebida usando Context.getSystemService(Class) e class. O Context, por sua vez, pode ser obtido usando SandboxedSdkProvider.getContext().

Resumo

Constantes

String SDK_SANDBOX_CONTROLLER_SERVICE

Métodos públicos

List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces()

Busca todos os AppOwnedSdkSandboxInterface registrados pelo app.

String getClientPackageName()

Retorna o nome do pacote do app cliente.

SharedPreferences getClientSharedPreferences()

Retorna SharedPreferences contendo dados sincronizados do app cliente.

List<SandboxedSdk> getSandboxedSdks()

Busca informações sobre SDKs que são carregados no sandbox.

void loadSdk(String sdkName, Bundle params, Executor executor, OutcomeReceiver<SandboxedSdkLoadSdkException> receiver)

Carrega o SDK em um processo Java do sandbox do SDK.

IBinder registerSdkSandboxActivityHandler(SdkSandboxActivityHandler sdkSandboxActivityHandler)

Retorna um identificador para uma SdkSandboxActivityHandler após o registro.

void unregisterSdkSandboxActivityHandler(SdkSandboxActivityHandler sdkSandboxActivityHandler)

Cancele o registro de um SdkSandboxActivityHandler já registrado.

Métodos herdados

Constantes

SDK_SANDBOX_CONTROLLER_SERVICE

public static final String SDK_SANDBOX_CONTROLLER_SERVICE

Valor da constante: "sdk_sandbox_controller_service"

Métodos públicos

getAppOwnedSdkSandboxInterfaces

public List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces ()

Busca todos os AppOwnedSdkSandboxInterface registrados pelo app.

Returns
List<AppOwnedSdkSandboxInterface> Lista de AppOwnedSdkSandboxInterface que contém todos os AppOwnedSdkSandboxInterface registrados no momento. Esse valor não pode ser null.

Gera
UnsupportedOperationException se o controlador for recebido de um contexto inesperado. Use SandboxedSdkProvider#getContext() para o contexto certo

getClientPackageName

public String getClientPackageName ()

Retorna o nome do pacote do app cliente.

Returns
String Esse valor não pode ser null.

Gera
UnsupportedOperationException se o controlador for recebido de um contexto inesperado. Use SandboxedSdkProvider#getContext() para o contexto certo.

getClientSharedPreferences

public SharedPreferences getClientSharedPreferences ()

Retorna SharedPreferences contendo dados sincronizados do app cliente.

As chaves que foram sincronizadas pelo app cliente usando SdkSandboxManager.addSyncedSharedPreferencesKeys(Set) podem ser encontradas neste SharedPreferences.

O SharedPreferences retornado só pode ser lido. Não há suporte para gravação.

Returns
SharedPreferences SharedPreferences contendo dados sincronizados do app cliente. Esse valor não pode ser null.

Gera
UnsupportedOperationException se o controlador for recebido de um contexto inesperado. Use SandboxedSdkProvider#getContext() para o contexto certo

getSandboxedSdks

public List<SandboxedSdk> getSandboxedSdks ()

Busca informações sobre SDKs que são carregados no sandbox.

Returns
List<SandboxedSdk> Lista de SandboxedSdk que contém todos os SDKs carregados no momento. Este valor não pode ser null.

Gera
UnsupportedOperationException se o controlador for recebido de um contexto inesperado. Use SandboxedSdkProvider#getContext() para o contexto certo

loadSdk

public void loadSdk (String sdkName, 
                Bundle params, 
                Executor executor, 
                OutcomeReceiver<SandboxedSdkLoadSdkException> receiver)

Carrega o SDK em um processo Java do sandbox do SDK.

Carrega a biblioteca do SDK com sdkName para um processo de sandbox do SDK de forma assíncrona. O autor da chamada vai ser notificado pelo receiver.

O autor da chamada só pode carregar os SDKs de que o app cliente depende no sandbox do SDK.

Parâmetros
sdkName String: nome do SDK a ser carregado. Esse valor não pode ser null.

params Bundle: outros parâmetros a serem transmitidos ao SDK na forma de um Bundle, conforme combinado entre o cliente e o SDK. Esse valor não pode ser null.

executor Executor: o Executor em que o receptor será invocado. Esse valor não pode ser null. Eventos de callback e listener são enviados com esse Executor, fornecendo uma maneira fácil de controlar qual linha de execução vai ser usada. Para enviar eventos com a linha de execução principal do aplicativo, use Context.getMainExecutor(). Caso contrário, forneça um Executor que seja enviado para uma linha de execução adequada.

receiver OutcomeReceiver: recebe um SandboxedSdk em uma execução bem-sucedida ou LoadSdkException. Esse valor não pode ser null.

Gera
UnsupportedOperationException se o controlador for recebido de um contexto inesperado. Use SandboxedSdkProvider#getContext() para o contexto certo

registerSdkSandboxActivityHandler

public IBinder registerSdkSandboxActivityHandler (SdkSandboxActivityHandler sdkSandboxActivityHandler)

Retorna um identificador para uma SdkSandboxActivityHandler após o registro.

Essa função registra uma implementação de SdkSandboxActivityHandler criada por um SDK e retorna um IBinder que identifica exclusivamente o objeto SdkSandboxActivityHandler transmitido.

Se o mesmo SdkSandboxActivityHandler for registrado várias vezes sem cancelar o registro, o mesmo token IBinder será retornado.

Parâmetros
sdkSandboxActivityHandler SdkSandboxActivityHandler: é o SdkSandboxActivityHandler a ser registrado. Esse valor não pode ser null.

Returns
IBinder IBinder identificam de forma exclusiva o SdkSandboxActivityHandler transmitido. Esse valor não pode ser null.

cancelarregistroSdkSandboxActivityHandler

public void unregisterSdkSandboxActivityHandler (SdkSandboxActivityHandler sdkSandboxActivityHandler)

Cancele o registro de um SdkSandboxActivityHandler já registrado.

Se o SdkSandboxActivityHandler transmitido estiver registrado, o registro será cancelado. Caso contrário, ele não terá efeito.

Após o cancelamento do registro, o SDK pode registrar o mesmo objeto do gerenciador novamente ou criar um novo, caso queira um novo Activity.

Se o token IBinder do gerenciador não registrado for usado para iniciar um Activity, o Activity não será iniciado.

Parâmetros
sdkSandboxActivityHandler SdkSandboxActivityHandler: é o SdkSandboxActivityHandler para cancelar o registro. Esse valor não pode ser null.

Returns
void Esse valor não pode ser null.