SdkSandboxController

public class SdkSandboxController
extends Object

java.lang.Object.
   ↳ android.app.sdksandbox.sdkprovider.SdkSandboxController


Controlador que usa el SDK cargado en la zona de pruebas para acceder a la información que proporciona la zona de pruebas del SDK.

Permite que el SDK se comunique con otros SDK en la zona de pruebas del SDK y conoce el estado de los SDKs que se cargan actualmente en él.

Se puede obtener una instancia de SdkSandboxController con Context.getSystemService(Class) y class. El Context, a su vez, se puede obtener usando SandboxedSdkProvider.getContext().

Resumen

Constantes

String SDK_SANDBOX_CONTROLLER_SERVICE

Métodos públicos

List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces()

Recupera todos los AppOwnedSdkSandboxInterface que registra la app.

String getClientPackageName()

Muestra el nombre del paquete de la app cliente.

SharedPreferences getClientSharedPreferences()

Muestra SharedPreferences que contiene datos sincronizados desde la app cliente.

List<SandboxedSdk> getSandboxedSdks()

Recupera información sobre los SDK que se cargan en la zona de pruebas.

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

Carga el SDK en un proceso de Java de la zona de pruebas del SDK.

IBinder registerSdkSandboxActivityHandler(SdkSandboxActivityHandler sdkSandboxActivityHandler)

Muestra un identificador para un elemento SdkSandboxActivityHandler después de registrarlo.

void unregisterSdkSandboxActivityHandler(SdkSandboxActivityHandler sdkSandboxActivityHandler)

Cancela el registro de un SdkSandboxActivityHandler ya registrado.

Métodos heredados

Constantes

SDK_SANDBOX_CONTROLLER_SERVICE

public static final String SDK_SANDBOX_CONTROLLER_SERVICE

Valor constante: "sdk_sandbox_controller_service"

Métodos públicos

getAppOwnedSdkSandboxInterfaces.

public List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces ()

Recupera todos los AppOwnedSdkSandboxInterface que registra la app.

Devuelve
List<AppOwnedSdkSandboxInterface> Lista de AppOwnedSdkSandboxInterface que contiene todas las AppOwnedSdkSandboxInterface registradas actualmente. Este valor no puede ser null.

Arroja
UnsupportedOperationException si el controlador se obtiene de un contexto inesperado. Usa SandboxedSdkProvider#getContext() para el contexto correcto

getClientPackageName

public String getClientPackageName ()

Muestra el nombre del paquete de la app cliente.

Devuelve
String Este valor no puede ser null.

Arroja
UnsupportedOperationException si el controlador se obtiene de un contexto inesperado. Usa SandboxedSdkProvider#getContext() para el contexto correcto.

getClientSharedPreferences

public SharedPreferences getClientSharedPreferences ()

Muestra SharedPreferences que contiene datos sincronizados desde la app cliente.

Las claves que haya sincronizado la app cliente con SdkSandboxManager.addSyncedSharedPreferencesKeys(Set) se pueden encontrar en este SharedPreferences.

Solo debe leerse el objeto SharedPreferences que se muestra. No se admite la escritura en ella.

Devuelve
SharedPreferences SharedPreferences contiene datos sincronizados desde la app cliente. Este valor no puede ser null.

Arroja
UnsupportedOperationException si el controlador se obtiene de un contexto inesperado. Usa SandboxedSdkProvider#getContext() para el contexto correcto

getSandboxedSdks.

public List<SandboxedSdk> getSandboxedSdks ()

Recupera información sobre los SDK que se cargan en la zona de pruebas.

Devuelve
List<SandboxedSdk> Lista de SandboxedSdk que contiene todos los SDK cargados actualmente. Este valor no puede ser null.

Arroja
UnsupportedOperationException si el controlador se obtiene de un contexto inesperado. Usa SandboxedSdkProvider#getContext() para el contexto adecuado

loadSdk

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

Carga el SDK en un proceso de Java de la zona de pruebas del SDK.

Carga la biblioteca del SDK con sdkName en un proceso de zona de pruebas del SDK de forma asíncrona. El emisor recibirá una notificación a través de receiver.

El llamador solo puede cargar SDKs de la app cliente en la zona de pruebas del SDK.

Parámetros
sdkName String: Es el nombre del SDK que se cargará. Este valor no puede ser null.

params Bundle: Son parámetros adicionales que se pasarán al SDK en forma de Bundle, según lo acordado entre el cliente y el SDK. Este valor no puede ser null.

executor Executor: El Executor en el que se invoca el receptor. Este valor no puede ser null. Los eventos de devolución de llamada y de objetos de escucha se envían a través de este Executor, lo que proporciona una manera fácil de controlar el subproceso que se usa. Para enviar eventos a través del subproceso principal de tu aplicación, puedes usar Context.getMainExecutor(). De lo contrario, proporciona un Executor que se envíe al subproceso correspondiente.

receiver OutcomeReceiver: Recibe un SandboxedSdk si se ejecuta correctamente o un LoadSdkException. Este valor no puede ser null.

Arroja
UnsupportedOperationException si el controlador se obtiene de un contexto inesperado. Usa SandboxedSdkProvider#getContext() para el contexto correcto

registerSdkSandboxActivityHandler

public IBinder registerSdkSandboxActivityHandler (SdkSandboxActivityHandler sdkSandboxActivityHandler)

Muestra un identificador para un elemento SdkSandboxActivityHandler después de registrarlo.

Esta función registra una implementación de SdkSandboxActivityHandler creada por un SDK y muestra un IBinder que identifica de forma única el objeto SdkSandboxActivityHandler pasado.

Si se registró el mismo SdkSandboxActivityHandler varias veces sin cancelar el registro, se mostrará el mismo token de IBinder.

Parámetros
sdkSandboxActivityHandler SdkSandboxActivityHandler: Es el SdkSandboxActivityHandler que se debe registrar. Este valor no puede ser null.

Devuelve
IBinder IBinder identifica de forma única el SdkSandboxActivityHandler pasado. Este valor no puede ser null.

unregisterSdkSandboxActivityHandler

public void unregisterSdkSandboxActivityHandler (SdkSandboxActivityHandler sdkSandboxActivityHandler)

Cancela el registro de un SdkSandboxActivityHandler ya registrado.

Si se registra el SdkSandboxActivityHandler pasado, se cancelará su registro. De lo contrario, no hará nada.

Después de cancelar el registro, el SDK puede volver a registrar el mismo objeto de controlador o crear uno nuevo en caso de que quiera un Activity nuevo.

Si el token IBinder del controlador no registrado que se usó para iniciar un Activity, no se iniciará Activity.

Parámetros
sdkSandboxActivityHandler SdkSandboxActivityHandler: es la SdkSandboxActivityHandler para cancelar el registro. Este valor no puede ser null.

Devuelve
void Este valor no puede ser null.