SandboxedSdk

public final class SandboxedSdk
extends Object implements Parcelable

java.lang.Object
   ↳ android.app.sdksandbox.SandboxedSdk


代表在沙箱程序中載入的 SDK。

成功時會傳回給 SdkSandboxManager#loadSdk 的回應。應用程式可透過呼叫 SdkSandboxManager#loadSdk 取得。請使用這個物件,透過 getInterface() 取得 SDK 的介面。

SDK 會在呼叫 SandboxedSdkProvider#onLoadSdk 時建立它,並在呼叫 SandboxedSdkProvider#beforeUnloadSdk() 時捨棄所有參照。此外,在呼叫 SandboxedSdkProvider#beforeUnloadSdk() 後,SDK 應該無法呼叫 getInterface() 傳回的 IBinder

摘要

繼承常數

欄位

public static final Creator<SandboxedSdk> CREATOR

公用建構函式

SandboxedSdk(IBinder sdkInterface)

建立 SandboxedSdk 物件。

公用方法

int describeContents()

描述此 Parcelable 例項封送處理表示法中包含的特殊物件種類。

IBinder getInterface()

傳回回應 SdkSandboxManager.loadSdk(String, Bundle, Executor, OutcomeReceiver) 時載入的 SDK 介面。

SharedLibraryInfo getSharedLibraryInfo()

傳回 SDK 的 SharedLibraryInfo

void writeToParcel(Parcel dest, int flags)

壓平合併此物件並加入至 Parcel。

繼承方法

欄位

創作者

已新增至 API 級別 34
Ad Services Extensions 4 也已納入
public static final Creator<SandboxedSdk> CREATOR

公用建構函式

SandboxedSdk

已新增至 API 級別 34
Ad Services Extensions 4 也已納入
public SandboxedSdk (IBinder sdkInterface)

建立 SandboxedSdk 物件。

參數
sdkInterface IBinder:SDK 的介面。這會成為應用程式沙箱式 SDK 的進入點。SDK 應保持有效狀態,直到沙箱中載入為止,而且在卸載之後,才會開始對這個介面的呼叫失敗。

您稍後可以使用 getInterface() 擷取這個介面。此值不能為 null

公用方法

describeContents

已在 API 級別 34 中新增。
public int describeContents ()

描述此 Parcelable 執行個體管理表示法中包含的特別物件種類。舉例來說,如果物件在 writeToParcel(android.os.Parcel, int) 的輸出內容中會包含檔案描述元,此方法的傳回值就必須包含 CONTENTS_FILE_DESCRIPTOR 位元。

傳回
int 位元遮罩,表示由此 Parcelable 物件執行個體管理的特殊物件類型組合。值為 0CONTENTS_FILE_DESCRIPTOR

取得介面

已新增至 API 級別 34
Ad Services Extensions 4 也已納入
public IBinder getInterface ()

傳回為回應 SdkSandboxManager.loadSdk(String, Bundle, Executor, OutcomeReceiver) 而載入的 SDK 介面。如果 Binder 無法使用,以回應 SDK 卸載時,會傳回 null 介面。

傳回
IBinder

getSharedLibraryInfo

已新增至 API 級別 34
Ad Services Extensions 5 也已納入
public SharedLibraryInfo getSharedLibraryInfo ()

傳回 SDK 的 SharedLibraryInfo

傳回
SharedLibraryInfo 此值不能為 null

擲回
IllegalStateException 表示系統服務尚未將 SharedLibraryInfo 附加至 SDK 傳送的 SandboxedSdk 物件。

writeToParcel

已在 API 級別 34 中新增。
public void writeToParcel (Parcel dest, 
                int flags)

壓平合併此物件並加入至 Parcel。

參數
dest Parcel:此值不能為 null

flags int:應如何編寫物件的相關其他標記。可以是 0 或 Parcelable.PARCELABLE_WRITE_RETURN_VALUE。值可以是 0Parcelable.PARCELABLE_WRITE_RETURN_VALUE 的組合,以及 android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES