SdkSandboxController
public
class
SdkSandboxController
extends Object
| java.lang.Object | |
| ↳ | android.app.sdksandbox.sdkprovider.SdkSandboxController |
サンドボックスに読み込まれた SDK が、SDK が提供する情報にアクセスするために使用するコントローラ できます。
これにより、SDK が SDK サンドボックス内の他の 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_サンドボックス_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> |
現在読み込まれているすべての SDK を含む SandboxedSdk のリスト
この値が null になることはありません。 |
| 例外 | |
|---|---|
UnsupportedOperationException |
コントローラが予期せず取得された場合は、
説明します。適切なコンテキストに対して SandboxedSdkProvider#getContext() を使用する |
loadSdk
public void loadSdk (String sdkName, Bundle params, Executor executor, OutcomeReceiver<SandboxedSdk, LoadSdkException> receiver)
SDK サンドボックスの Java プロセスで SDK を読み込みます。
sdkName を使用して SDK ライブラリを SDK サンドボックス プロセスに非同期で読み込みます。「
発信者には receiverを通じて通知されます。
呼び出し元は、クライアント アプリが依存する SDKs のみを SDK サンドボックスに読み込めます。
| パラメータ | |
|---|---|
sdkName |
String: 読み込む SDK の名前。
この値が null になることはありません。 |
params |
Bundle: Bundle の形式で SDK に渡される追加のパラメータ
同意する必要があります
この値が null になることはありません。 |
executor |
Executor: レシーバを呼び出す Executor。
この値が null になることはありません。
コールバック イベントとリスナー イベントはこの Executor を通じてディスパッチされるため、使用するスレッドを簡単に制御できます。アプリのメインスレッドを通じてイベントをディスパッチするには、Context.getMainExecutor() を使用します。それ以外の場合は、適切なスレッドにディスパッチする Executor を提供します。 |
receiver |
OutcomeReceiver: 実行が成功すると SandboxedSdk を受け取ります。または、LoadSdkException を受け取ります。
この値が null になることはありません。 |
| 例外 | |
|---|---|
UnsupportedOperationException |
コントローラが予期せず取得された場合は、
説明します。適切なコンテキストに対して SandboxedSdkProvider#getContext() を使用する |
registerSdkSandboxActivityHandler
public IBinder registerSdkSandboxActivityHandler (SdkSandboxActivityHandler sdkSandboxActivityHandler)
登録後に SdkSandboxActivityHandler の識別子を返します。
この関数は、作成した SdkSandboxActivityHandler の実装を登録します。
渡された SdkSandboxActivityHandler オブジェクトを一意に識別する IBinder を返します。
同じ SdkSandboxActivityHandler が複数回登録された場合、
登録を解除すると、同じ IBinder トークンが返されます。
| パラメータ | |
|---|---|
sdkSandboxActivityHandler |
SdkSandboxActivityHandler: 登録する SdkSandboxActivityHandler です。
この値が null になることはありません。 |
| 戻り値 | |
|---|---|
IBinder |
IBinder は、渡された SdkSandboxActivityHandler を一意に識別します。
この値が null になることはありません。 |
unregisterSdkSandboxActivityHandler
public void unregisterSdkSandboxActivityHandler (SdkSandboxActivityHandler sdkSandboxActivityHandler)
すでに登録されている SdkSandboxActivityHandler の登録を解除します。
渡された SdkSandboxActivityHandler が登録されている場合は、登録が解除されます。
それ以外の場合、何も行われません。
登録を解除した後、SDK は同じハンドラ オブジェクトを再度登録するか、
新しい Activity が必要な場合。
Activity の開始に使われた未登録のハンドラの IBinder トークンの場合、
Activity を起動できません。
| パラメータ | |
|---|---|
sdkSandboxActivityHandler |
SdkSandboxActivityHandler: 登録を解除する SdkSandboxActivityHandler です。
この値が null になることはありません。 |
| 戻り値 | |
|---|---|
void |
この値が null になることはありません。 |