SandboxedSdk

public final class SandboxedSdk
extends Object implements Parcelable

java.lang.Object
android.app.sdk.SandboxedSdk


يمثل ذلك حزمة تطوير برامج (SDK) تم تحميلها في عملية وضع الحماية.

تم إرجاع المهمة ردًّا على رسالة SdkSandboxManager#loadSdk، بعد نجاح العملية. ويمكن للتطبيق الحصول عليه من خلال طلب الرقم SdkSandboxManager#loadSdk. ويجب أن يستخدم التطبيق هذا الكائن للحصول على واجهة لحزمة SDK من خلال getInterface().

يجب أن تنشئها حزمة تطوير البرامج (SDK) عند طلب الرمز SandboxedSdkProvider#onLoadSdk، كما يجب أن تزيل جميع المراجع إليه عند طلب SandboxedSdkProvider#beforeUnloadSdk(). بالإضافة إلى ذلك، من المفترض أن يتعذّر على حزمة SDK تنفيذ الطلبات التي يتم إجراؤها إلى IBinder التي يتم عرضها من getInterface() بعد طلب SandboxedSdkProvider#beforeUnloadSdk().

ملخّص

الثوابت المكتسَبة

الحقول

public static final Creator<SandboxedSdk> CREATOR

شركات الإنشاءات العامة

SandboxedSdk(IBinder sdkInterface)

تنشئ كائن SandboxedSdk.

الطرق المتاحة للجميع

int describeContents()

صِف أنواع الكائنات الخاصة المضمّنة في التمثيل المنظّم في مثال Parcelable هذا.

IBinder getInterface()

تعرض الواجهة لحزمة تطوير البرامج (SDK) التي تم تحميلها استجابةً لـ SdkSandboxManager.loadSdk(String, Bundle, Executor, OutcomeReceiver).

SharedLibraryInfo getSharedLibraryInfo()

تعرض SharedLibraryInfo لحزمة SDK.

void writeToParcel(Parcel dest, int flags)

انقِل هذا العنصر إلى طرد.

الطرق المكتسبة

الحقول

شركات الإنشاءات العامة

SandboxedSdk

public SandboxedSdk (IBinder sdkInterface)

تنشئ كائن SandboxedSdk.

المعلّمات
sdkInterface IBinder: واجهة حزمة SDK سيكون هذا هو نقطة الدخول إلى SDK الموضوع في وضع الحماية للتطبيق. يجب أن تحافظ حزمة تطوير البرامج (SDK) على صلاحية هذا الإذن إلى أن يتم تحميله في وضع الحماية، وتبدأ في تعذُّر الاتصالات بهذه الواجهة بعد إلغاء تحميلها.

يمكن استرداد هذه الواجهة لاحقًا باستخدام getInterface(). لا يمكن أن تكون هذه القيمة null.

الطرق المتاحة للجميع

وصف المحتوى

public int describeContents ()

صِف أنواع الكائنات الخاصة المضمّنة في التمثيل المنظّم في مثال Parcelable هذا. على سبيل المثال، إذا كان الكائن سيتضمن واصفًا للملفات في إخراج writeToParcel(android.os.Parcel, int)، يجب أن تتضمن القيمة المعروضة لهذه الطريقة وحدة البت CONTENTS_FILE_DESCRIPTOR.

الركلات المردودة
int قناع بت يشير إلى مجموعة أنواع الكائنات الخاصة التي تم تنظيمها من خلال مثيل الكائن القابل للقطع. القيمة هي 0 أو CONTENTS_FILE_DESCRIPTOR

الحصول على الواجهة

public IBinder getInterface ()

تعرض الواجهة لحزمة تطوير البرامج (SDK) التي تم تحميلها استجابةً لـ SdkSandboxManager.loadSdk(String, Bundle, Executor, OutcomeReceiver). يتم عرض واجهة null إذا أصبح الصنف Binder غير متاح منذ ذلك الحين، استجابةً لإلغاء تحميل حزمة تطوير البرامج (SDK).

الركلات المردودة
IBinder

getSharedLibraryInfo

public SharedLibraryInfo getSharedLibraryInfo ()

تعرض SharedLibraryInfo لحزمة SDK.

الركلات المردودة
SharedLibraryInfo لا يمكن أن تكون هذه القيمة null.

الرميات
IllegalStateException إذا لم ترفق خدمة النظام SharedLibraryInfo إلى العنصر SandboxedSdk الذي أرسلته حزمة تطوير البرامج (SDK).

الكتابة إلىParcel

public void writeToParcel (Parcel dest, 
                int flags)

انقِل هذا العنصر إلى طرد.

المعلّمات
dest Parcel: لا يمكن أن تكون هذه القيمة null.

flags int: علامات إضافية توضّح طريقة كتابة العنصر. قد تكون 0 أو Parcelable.PARCELABLE_WRITE_RETURN_VALUE. القيمة هي 0 أو مجموعة من Parcelable.PARCELABLE_WRITE_RETURN_VALUE، وandroid.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES