SdkSandboxController
public class SdkSandboxController
extends Object
| java.lang.Объект | |
| ↳ | android.app.sdksandbox.sdkprovider.SdkSandboxController |
Контроллер, который используется SDK, загруженным в песочницу, для доступа к информации, предоставляемой песочницей SDK.
Это позволяет SDK взаимодействовать с другими SDKS в изолированной программной среде SDK и узнавать о состоянии SDK, которые в данный момент загружены в него.
Экземпляр SdkSandboxController можно получить с помощью Context.getSystemService(Class) и class . Context в свою очередь, можно получить с помощью SandboxedSdkProvider.getContext() .
Краткое содержание
Константы | |
|---|---|
String | SDK_SANDBOX_CONTROLLER_SERVICE
|
Публичные методы | |
|---|---|
List < AppOwnedSdkSandboxInterface > | getAppOwnedSdkSandboxInterfaces () Извлекает все |
String | getClientPackageName ()Возвращает имя пакета клиентского приложения. |
SharedPreferences | getClientSharedPreferences () Возвращает |
List < SandboxedSdk > | getSandboxedSdks ()Получает информацию о SDK, загруженных в песочницу. |
void | loadSdk ( String sdkName, Bundle params, Executor executor, OutcomeReceiver < SandboxedSdk , LoadSdkException > receiver)Загружает SDK в Java-процесс песочницы SDK. |
IBinder | registerSdkSandboxActivityHandler ( SdkSandboxActivityHandler sdkSandboxActivityHandler) Возвращает идентификатор |
void | unregisterSdkSandboxActivityHandler ( SdkSandboxActivityHandler sdkSandboxActivityHandler) Отмените регистрацию уже зарегистрированного |
Унаследованные методы | |
|---|---|
Константы
SDK_SANDBOX_CONTROLLER_SERVICE
public static final String SDK_SANDBOX_CONTROLLER_SERVICE
Постоянное значение: «sdk_sandbox_controller_service»
Публичные методы
getAppOwnedSdkSandboxInterfaces
public List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces ()
Извлекает все AppOwnedSdkSandboxInterface , зарегистрированные приложением.
| Возврат | |
|---|---|
List < AppOwnedSdkSandboxInterface > | Список AppOwnedSdkSandboxInterface содержащий все зарегистрированные на данный момент AppOwnedSdkSandboxInterface. Это значение не может быть null . |
| Броски | |
|---|---|
UnsupportedOperationException | если контроллер получен из неожиданного контекста. Используйте SandboxedSdkProvider#getContext() для правильного контекста. |
getClientPackageName
public String getClientPackageName ()
Возвращает имя пакета клиентского приложения.
| Возврат | |
|---|---|
String | Это значение не может быть null . |
| Броски | |
|---|---|
UnsupportedOperationException | если контроллер получен из неожиданного контекста. Используйте SandboxedSdkProvider#getContext() для правильного контекста. |
getClientSharedPreferences
public SharedPreferences getClientSharedPreferences ()
Возвращает SharedPreferences содержащий данные, синхронизированные из клиентского приложения.
Ключи, синхронизированные клиентским приложением с помощью SdkSandboxManager.addSyncedSharedPreferencesKeys(Set) можно найти в этом SharedPreferences .
Возвращенные SharedPreferences следует только читать. Запись в него не поддерживается.
| Возврат | |
|---|---|
SharedPreferences | SharedPreferences содержащий данные, синхронизированные из клиентского приложения. Это значение не может быть null . |
| Броски | |
|---|---|
UnsupportedOperationException | если контроллер получен из неожиданного контекста. Используйте SandboxedSdkProvider#getContext() для правильного контекста. |
getSandboxedSdks
public List<SandboxedSdk> getSandboxedSdks ()
Получает информацию о SDK, загруженных в песочницу.
| Возврат | |
|---|---|
List < SandboxedSdk > | Список SandboxedSdk содержащий все загруженные в данный момент SDK. Это значение не может быть null . |
| Броски | |
|---|---|
UnsupportedOperationException | если контроллер получен из неожиданного контекста. Используйте SandboxedSdkProvider#getContext() для правильного контекста. |
loadSdk
public void loadSdk (String sdkName, Bundle params, Executor executor, OutcomeReceiver<SandboxedSdk, LoadSdkException> receiver)
Загружает SDK в Java-процесс песочницы SDK.
Асинхронно загружает библиотеку SDK с sdkName в процесс песочницы SDK. Вызывающий абонент будет уведомлен через receiver .
Вызывающий может загружать в изолированную программную среду SDK только SDKs , от которых зависит клиентское приложение.
| Параметры | |
|---|---|
sdkName | String : имя загружаемого SDK. Это значение не может быть null . |
params | Bundle : дополнительные параметры, которые будут переданы в SDK в форме Bundle по соглашению между клиентом и SDK. Это значение не может быть null . |
executor | Executor : Executor , к которому вызывается получатель. Это значение не может быть null . События обратного вызова и прослушивателя отправляются через этот Executor , предоставляя простой способ контролировать, какой поток используется. Чтобы отправлять события через основной поток вашего приложения, вы можете использовать Context.getMainExecutor() . В противном случае предоставьте Executor , который отправляет данные в соответствующий поток. |
receiver | OutcomeReceiver : он либо получает SandboxedSdk при успешном запуске, либо LoadSdkException . Это значение не может быть null . |
| Броски | |
|---|---|
UnsupportedOperationException | если контроллер получен из неожиданного контекста. Используйте SandboxedSdkProvider#getContext() для правильного контекста. |
зарегистрироватьSdkSandboxActivityHandler
public IBinder registerSdkSandboxActivityHandler (SdkSandboxActivityHandler sdkSandboxActivityHandler)
Возвращает идентификатор SdkSandboxActivityHandler после его регистрации.
Эта функция регистрирует реализацию SdkSandboxActivityHandler , созданную SDK, и возвращает IBinder , который однозначно идентифицирует переданный объект SdkSandboxActivityHandler .
Если один и тот же SdkSandboxActivityHandler зарегистрирован несколько раз без отмены регистрации, будет возвращен один и тот же токен IBinder .
| Параметры | |
|---|---|
sdkSandboxActivityHandler | SdkSandboxActivityHandler : SdkSandboxActivityHandler для регистрации. Это значение не может быть null . |
| Возврат | |
|---|---|
IBinder | IBinder однозначно идентифицирует переданный SdkSandboxActivityHandler . Это значение не может быть null . |
отменить регистрациюSdkSandboxActivityHandler
public void unregisterSdkSandboxActivityHandler (SdkSandboxActivityHandler sdkSandboxActivityHandler)
Отмените регистрацию уже зарегистрированного SdkSandboxActivityHandler .
Если переданный SdkSandboxActivityHandler зарегистрирован, он будет отменен. В противном случае это ничего не даст.
После отмены регистрации SDK может снова зарегистрировать тот же объект-обработчик или создать новый, если ему понадобится новое Activity .
Если токен IBinder незарегистрированного обработчика используется для запуска Activity , Activity не запустится.
| Параметры | |
|---|---|
sdkSandboxActivityHandler | SdkSandboxActivityHandler : SdkSandboxActivityHandler для отмены регистрации. Это значение не может быть null . |
| Возврат | |
|---|---|
void | Это значение не может быть null . |