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 |
String
|
getClientPackageName()
Muestra el nombre del paquete de la app cliente. |
SharedPreferences
|
getClientSharedPreferences()
Muestra |
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<SandboxedSdk, LoadSdkException> 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 |
void
|
unregisterSdkSandboxActivityHandler(SdkSandboxActivityHandler sdkSandboxActivityHandler)
Cancela el registro de un |
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<SandboxedSdk, LoadSdkException> 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 . |