SdkSandboxController
public
class
SdkSandboxController
extends Object
| java.lang.Object | |
| ↳ | android.app.sdksandbox.sdkprovider.SdkSandboxController |
沙箱中載入的 SDK 所使用的控制器,可存取 SDK 提供的資訊 沙箱。
可讓 SDK 與 SDK 沙箱中的其他 SDK 通訊,並瞭解狀態 以及目前載入的 SDK 版本
您可以使用 Context.getSystemService(Class) 和 class 取得 SdkSandboxController 的執行個體。Context可以轉回
可透過 SandboxedSdkProvider.getContext() 取得
摘要
常數 | |
|---|---|
String |
SDK_SANDBOX_CONTROLLER_SERVICE
|
公用方法 | |
|---|---|
List<AppOwnedSdkSandboxInterface>
|
getAppOwnedSdkSandboxInterfaces()
擷取應用程式註冊的所有 |
String
|
getClientPackageName()
傳回用戶端應用程式的套件名稱。 |
SharedPreferences
|
getClientSharedPreferences()
傳回 |
List<SandboxedSdk>
|
getSandboxedSdks()
擷取在沙箱中載入的 Sdks 相關資訊。 |
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,其中包含從用戶端應用程式同步處理的資料。
您可以在這個 SharedPreferences 中找到已由用戶端應用程式使用 SdkSandboxManager.addSyncedSharedPreferencesKeys(Set) 同步處理的金鑰。
傳回的 SharedPreferences 只能讀取。寫入不是
支援。
| 傳回 | |
|---|---|
SharedPreferences |
SharedPreferences:包含從用戶端應用程式同步處理的資料。
此值不能為 null。 |
| 擲回 | |
|---|---|
UnsupportedOperationException |
如果控制器是從非預期中獲得
相關資訊在適當的情境下使用 SandboxedSdkProvider#getContext() |
getSandboxedSdks
public List<SandboxedSdk> getSandboxedSdks ()
擷取在沙箱中載入的 Sdks 相關資訊。
| 傳回 | |
|---|---|
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。
使用 sdkName 以非同步方式將 SDK 程式庫載入 SDK 沙箱程序。
來電者將透過 receiver 收到通知。
呼叫端只能將用戶端應用程式仰賴的 SDKs 載入 SDK 沙箱中。
| 參數 | |
|---|---|
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() |
RegisterSdkSandboxActivityHandler
public IBinder registerSdkSandboxActivityHandler (SdkSandboxActivityHandler sdkSandboxActivityHandler)
在註冊 SdkSandboxActivityHandler 後傳回其 ID。
這個函式會註冊由SdkSandboxActivityHandler
SDK 並傳回 IBinder,該物件會明確識別所傳遞 SdkSandboxActivityHandler 物件。
如果有多次註冊相同的SdkSandboxActivityHandler,但沒有
取消註冊後,系統會傳回相同的 IBinder 權杖。
| 參數 | |
|---|---|
sdkSandboxActivityHandler |
SdkSandboxActivityHandler:要註冊的 SdkSandboxActivityHandler。
此值不能為 null。 |
| 傳回 | |
|---|---|
IBinder |
IBinder 可明確識別傳遞的 SdkSandboxActivityHandler。
此值不能為 null。 |
取消註冊 SdkSandboxActivityHandler
public void unregisterSdkSandboxActivityHandler (SdkSandboxActivityHandler sdkSandboxActivityHandler)
取消註冊已註冊的 SdkSandboxActivityHandler。
如果已註冊傳遞的 SdkSandboxActivityHandler,系統就會取消註冊。
否則不會有任何作用。
取消註冊後,SDK 可以再次註冊相同的處理常式物件,或是在
充電盒需要新的 Activity。
如果用於啟動 Activity 的未註冊處理常式 IBinder 權杖,
Activity 將無法啟動。
| 參數 | |
|---|---|
sdkSandboxActivityHandler |
SdkSandboxActivityHandler:要取消註冊的 SdkSandboxActivityHandler。
此值不能為 null。 |
| 傳回 | |
|---|---|
void |
此值不能為 null。 |