沙盒

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() 時參照該物件。此外, SDK 必須在 之後向 getInterface() 傳回的 IBinder 發出失敗呼叫 已呼叫 SandboxedSdkProvider#beforeUnloadSdk()

摘要

繼承常數

int CONTENTS_FILE_DESCRIPTOR

describeContents() 搭配使用的描述元位元:表示 Parcelable 物件的平面表示法包含檔案描述元。

int PARCELABLE_WRITE_RETURN_VALUE

writeToParcel(Parcel, int) 搭配使用的旗標:正在寫入的物件 是回傳值, 「Parcelable someFunction()」, 「void someFunction(out Parcelable)」,或 「void someFunction(inout Parcelable)」。

欄位

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。

繼承方法

Object clone()

建立並傳回此物件的副本。

boolean equals(Object obj)

指出是否有其他物件「等於」這個。

void finalize()

在垃圾收集作業時,垃圾收集器會呼叫該物件上的 判斷物件沒有其他參照

final Class<?> getClass()

傳回此 Object 的執行階段類別。

int hashCode()

傳回該物件的雜湊碼值。

final void notify()

喚醒目前等待這個物件的 監控功能

final void notifyAll()

喚醒所有等待此物件監控器的執行緒。

String toString()

傳回該物件的字串表示法。

final void wait(long timeoutMillis, int nanos)

讓目前的執行緒等待,直到遭到喚醒為止。 通知中斷, 是否經過一定的即時效能

final void wait(long timeoutMillis)

讓目前的執行緒等待,直到遭到喚醒為止。 通知中斷, 是否經過一定的即時效能

final void wait()

讓目前的執行緒等待,直到遭到喚醒為止。 通知受到干擾

abstract int describeContents()

說明此 Parcelable 中包含的特別物件種類 例項的管理表示法

abstract void writeToParcel(Parcel dest, int flags)

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

欄位

CREATOR

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

公用建構函式

沙盒

已加至 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

getInterface

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

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

傳回
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