إدارة الاستجابة السريعة (SdkSandboxManager)
public
final
class
SdkSandboxManager
extends Object
java.lang.Object | |
↳ | android.app.sdksandbox.SdkSandboxManager |
توفّر واجهات برمجة التطبيقات لتحميل SDKs
في
عملية وضع الحماية لحزمة تطوير البرامج (SDK)، ثم التفاعل معها.
وضع الحماية لحزمة تطوير البرامج (SDK) هو عملية JavaScript يتم تشغيلها في نطاق uid منفصل. قد يكون لكل تطبيق حزمة تطوير برامج (SDK) خاصة به وضع الحماية.
يحتاج التطبيق أولاً إلى الإفصاح عن حِزم تطوير البرامج (SDK) التي يعتمد عليها في ملف البيان الخاص به، وذلك باستخدام علامة <uses-sdk-library>
. وقد لا تحمِّل التطبيقات سوى حِزم تطوير البرامج (SDK) التي تعتمد عليها في وضع الحماية لحِزم SDK.
يُرجى الاطّلاع أيضًا على:
ملخّص
الصفوف المتداخلة | |
---|---|
interface |
SdkSandboxManager.SdkSandboxProcessDeathCallback
طلب معاودة الاتصال لتتبُّع الموت في وضع الحماية لحزمة تطوير البرامج (SDK) للأحداث |
الطرق العامة | |
---|---|
void
|
addSdkSandboxProcessDeathCallback(Executor callbackExecutor, SdkSandboxManager.SdkSandboxProcessDeathCallback callback)
إضافة طلب معاودة الاتصال يتم تسجيله في أحداث مراحل نشاط وضع الحماية لحزمة تطوير البرامج (SDK)، مثل وضع الحماية لحزمة تطوير البرامج (SDK) الموت |
void
|
addSyncedSharedPreferencesKeys(Set<String> keys)
إضافة مفاتيح لمجموعة المفاتيح التي تتم مزامنتها من |
List<AppOwnedSdkSandboxInterface>
|
getAppOwnedSdkSandboxInterfaces()
لجلب قائمة بـ |
List<SandboxedSdk>
|
getSandboxedSdks()
يجلب معلومات عن حِزم تطوير البرامج (SDK) التي يتم تحميلها في وضع الحماية. |
static
int
|
getSdkSandboxState()
يعرض الحالة الحالية لمدى توفّر ميزة وضع الحماية لحزمة تطوير البرامج (SDK). |
Set<String>
|
getSyncedSharedPreferencesKeys()
عرض مفاتيح الضبط التي تتم مزامنتها من |
void
|
loadSdk(String sdkName, Bundle params, Executor executor, OutcomeReceiver<SandboxedSdk, LoadSdkException> receiver)
تعمل هذه السياسة على تحميل حزمة تطوير البرامج (SDK) في عملية JavaScript في وضع الحماية لحزمة تطوير البرامج (SDK). |
void
|
registerAppOwnedSdkSandboxInterface(AppOwnedSdkSandboxInterface appOwnedSdkSandboxInterface)
تسجيل |
void
|
removeSdkSandboxProcessDeathCallback(SdkSandboxManager.SdkSandboxProcessDeathCallback callback)
يؤدي هذا الإجراء إلى إزالة إذن |
void
|
removeSyncedSharedPreferencesKeys(Set<String> keys)
إزالة المفاتيح من مجموعة المفاتيح التي تمت إضافتها باستخدام سيتم محو المفاتيح التي تمت إزالتها من وضع الحماية لحزمة تطوير البرامج (SDK) إذا سبقت مزامنتها. |
void
|
requestSurfacePackage(String sdkName, Bundle params, Executor callbackExecutor, OutcomeReceiver<Bundle, RequestSurfacePackageException> receiver)
يرسل طلبًا للحصول على حزمة مساحة عرض إلى حزمة تطوير البرامج (SDK). |
void
|
startSdkSandboxActivity(Activity fromActivity, IBinder sdkActivityToken)
تؤدي هذه السياسة إلى بدء تشغيل " |
void
|
unloadSdk(String sdkName)
يؤدي هذا الخيار إلى إلغاء تحميل حزمة تطوير برامج (SDK) سبق أن حمَّلها المتصل. |
void
|
unregisterAppOwnedSdkSandboxInterface(String name)
إلغاء تسجيل |
الطرق المكتسبة | |
---|---|
الثوابت
EXTRA_DISPLAY_ID
public static final String EXTRA_DISPLAY_ID
اسم المفتاح الذي سيتم استخدامه في حقول الحزمة requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)
، ويجب أن تحدِّد قيمته رقم تعريف العدد الصحيح للرمز المنطقي
الشاشة لعرض SurfacePackage
.
القيمة الثابتة: "android.app.sdksandbox.extra.DISPLAY_ID"
EXTRA_HEIGHT_IN_PIXELS
public static final String EXTRA_HEIGHT_IN_PIXELS
تشير هذه السمة إلى اسم المفتاح الذي سيتم استخدامه في حقول الحزمة requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)
، ويجب أن تحدّد قيمته ارتفاع العدد الصحيح لـ SurfacePackage
بالبكسل.
القيمة الثابتة: "android.app.sdksandbox.extra.HEIGHT_IN_PIXELS"
EXTRA_HOST_TOKEN
public static final String EXTRA_HOST_TOKEN
هو اسم المفتاح الذي سيتم استخدامه في حقول الحزمة requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)
، ويجب أن تتضمّن قيمته الرمز المميّز الذي يعرضه SurfaceView.getHostToken()
بعد إكمال SurfaceView
.
مضافة إلى التسلسل الهرمي للعرض. لا يتم قبول سوى قيمة غير فارغة لتفعيل تقارير أخطاء ANR.
القيمة الثابتة: "android.app.sdksandbox.extra.HOST_TOKEN"
حزمة_EXTRA_SURFACE_PACKAGE
public static final String EXTRA_SURFACE_PACKAGE
اسم المفتاح في الحزمة الذي يتم تمريره إلى الدالة onResult
في OutcomeReceiver
، وهو الحقل requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)
، وتعرض قيمته القيمة المطلوبة SurfacePackage
.
القيمة الثابتة: "android.app.sdksandbox.extra.SURFACE_PACKAGE"
EXTRA_WIDTH_IN_PIXELS
public static final String EXTRA_WIDTH_IN_PIXELS
تشير هذه السمة إلى اسم المفتاح الذي سيتم استخدامه في حقول الحزمة requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)
، ويجب أن تحدّد قيمته عرض العدد الصحيح من SurfacePackage
بالبكسل.
القيمة الثابتة: "android.app.sdksandbox.extra.WIDTH_IN_PIXELS"
LOAD_SDK_ALREADY_LOADED
public static final int LOAD_SDK_ALREADY_LOADED
سبق أن تم تحميل حزمة SDK.
يشير ذلك إلى أنّ التطبيق العميل قد حاول إعادة تحميل حزمة تطوير البرامج (SDK) نفسها من خلال طلب loadSdk(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)
بعد
تم تحميل البيانات بنجاح.
القيمة الثابتة: 101 (0x00000065)
LOAD_SDK_INTERNAL_ERROR
public static final int LOAD_SDK_INTERNAL_ERROR
حدث خطأ داخلي أثناء تحميل حزمة SDK.
يشير ذلك إلى حدوث خطأ داخلي عام أثناء تطبيق الاستدعاء من العميل. التطبيق.
القيمة الثابتة: 500 (0x000001f4)
LOAD_SDK_NOT_FOUND
public static final int LOAD_SDK_NOT_FOUND
لم يتم العثور على حزمة SDK.
يشير ذلك إلى أنّ تطبيق العميل حاول تحميل حزمة تطوير برامج (SDK) غير حالية من خلال طلب loadSdk(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)
.
القيمة الثابتة: 100 (0x00000064)
LOAD_SDK_SDK_DEFINED_ERROR
public static final int LOAD_SDK_SDK_DEFINED_ERROR
حدث خطأ في حزمة SDK بعد التحميل.
يشير ذلك إلى أنّ حزمة تطوير البرامج (SDK) واجهت خطأً أثناء إعداد ما بعد التحميل. تشير رسالة الأشكال البيانية
يمكن الحصول على تفاصيل هذا من الحزمة التي تم إرجاعها في LoadSdkException
من خلال
تم تمرير OutcomeReceiver
إلى SdkSandboxManager#loadSdk
.
القيمة الثابتة: 102 (0x00000066)
LOAD_SDK_SDK_SANDBOX_DISABLED
public static final int LOAD_SDK_SDK_SANDBOX_DISABLED
تم إيقاف وضع الحماية لحزمة تطوير البرامج (SDK).
ويشير ذلك إلى إيقاف وضع الحماية لحزمة تطوير البرامج (SDK). أي محاولات لاحقة لتحميل حِزم SDK في فسيفشل هذا التمهيد أيضًا.
القيمة الثابتة: 103 (0x00000067)
REQUEST_SURFACE_PACKAGE_INTERNAL_ERROR
public static final int REQUEST_SURFACE_PACKAGE_INTERNAL_ERROR
حدث خطأ داخلي أثناء طلب SurfacePackage
.
يشير هذا إلى حدوث خطأ داخلي عام أثناء طلب
SurfacePackage
القيمة الثابتة: 700 (0x000002bc)
REQUEST_SURFACE_PACKAGE_SDK_NOT_LOADED (حزمة_SDK_NOT_LOADED)
public static final int REQUEST_SURFACE_PACKAGE_SDK_NOT_LOADED
لم يتم تحميل حزمة SDK أثناء طلب SurfacePackage
.
يشير ذلك إلى أنّ حزمة تطوير البرامج (SDK) التي يتم طلب SurfacePackage
لها ليست
تحميله، إما بسبب توقف وضع الحماية أو عدم تحميله في المقام الأول.
القيمة الثابتة: 701 (0x000002bd)
حزمة_SANDBOX_PROCESS_NOT_available
public static final int SDK_SANDBOX_PROCESS_NOT_AVAILABLE
عملية وضع الحماية لحزمة تطوير البرامج (SDK) غير متاحة.
يشير ذلك إلى أنّ عملية وضع الحماية لحزمة تطوير البرامج (SDK) غير متاحة، إما بسبب إيقافها. غير متصل أو لم يتم إنشاؤه في المقام الأول.
القيمة الثابتة: 503 (0x000001f7)
SDK_SANDBOX_SERVICE
public static final String SDK_SANDBOX_SERVICE
استخدِمه مع Context#getSystemService(String)
لاسترداد بيانات SdkSandboxManager
.
للتفاعل مع حِزم تطوير البرامج (SDK) التابعة لهذا التطبيق العميل
القيمة الثابتة: "SDK_sandbox"
حزمة_SDK_SANDBOX_state_DISABLED
public static final int SDK_SANDBOX_STATE_DISABLED
تم إيقاف وضع الحماية لحزمة تطوير البرامج (SDK).
واجهات برمجة تطبيقات SdkSandboxManager
مخفية. وستؤدي محاولات الاتصال به إلى UnsupportedOperationException
.
القيمة الثابتة: 0 (0x00000000)
SDK_SANDBOX_state_تصل_PROCESS_ISOLATION
public static final int SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION
تم تفعيل وضع الحماية لحزمة تطوير البرامج (SDK).
يمكن أن يستخدم التطبيق واجهات برمجة تطبيقات SdkSandboxManager
لتحميل SDKs
الذي يعتمد عليه في
عملية وضع الحماية لحزمة تطوير البرامج (SDK) المقابلة.
القيمة الثابتة: 2 (0x00000002)
الطرق العامة
addSdkSandboxProcessDeathCallback
public void addSdkSandboxProcessDeathCallback (Executor callbackExecutor, SdkSandboxManager.SdkSandboxProcessDeathCallback callback)
إضافة طلب معاودة الاتصال يتم تسجيله في أحداث مراحل نشاط وضع الحماية لحزمة تطوير البرامج (SDK)، مثل وضع الحماية لحزمة تطوير البرامج (SDK) الموت إذا لم يتم إنشاء وضع الحماية بعد عند استدعاء هذا، فسيكون الطلب بتخزينه حتى يتم إنشاء وضع الحماية، وعندها يتم تنشيطه لوضع الحماية هذا. منتجات يمكن إضافة عمليات معاودة الاتصال للكشف عن حالة الوفاة ولن تتم إزالتها عند إيقاف وضع الحماية.
المعلمات | |
---|---|
callbackExecutor |
Executor : السمة Executor المطلوب استدعاء معاودة الاتصال عليها
لا يمكن أن تكون هذه القيمة null .
يتم إرسال أحداث معاودة الاتصال والمستمعين من خلال هذا
Executor ، ما يوفّر طريقة سهلة للتحكّم في سلسلة المحادثات
استخدام البيانات المختلفة. لإرسال الأحداث من خلال سلسلة التعليمات الرئيسية
التطبيق، فيمكنك استخدام
Context.getMainExecutor()
وبخلاف ذلك، يُرجى توفير Executor يتم إرسالها إلى سلسلة محادثات مناسبة. |
callback |
SdkSandboxManager.SdkSandboxProcessDeathCallback : SdkSandboxProcessDeathCallback الذي سيستلم وضع الحماية لحزمة تطوير البرامج (SDK)
الأحداث في مراحل النشاط المختلفة.
لا يمكن أن تكون هذه القيمة null . |
addSyncedSharedPreferencesKeys
public void addSyncedSharedPreferencesKeys (Set<String> keys)
إضافة مفاتيح لمجموعة المفاتيح التي تتم مزامنتها من SharedPreferences
التلقائي للتطبيق إلى حزمة تطوير البرامج (SDK)
وضع الحماية.
ستتوفّر البيانات المتزامنة لحِزم SDK لقراءتها باستخدام واجهة برمجة تطبيقات SdkSandboxController.getClientSharedPreferences()
.
ولإيقاف مزامنة أي مفتاح تمت إضافته باستخدام واجهة برمجة التطبيقات هذه، يمكنك استخدام removeSyncedSharedPreferencesKeys(java.util.Set)
.
تتوقف المزامنة إذا تمت إعادة تشغيل التطبيق، وعلى المستخدم استدعاء واجهة برمجة التطبيقات هذه مرة أخرى لإعادة إنشاء المجموعة. من المفاتيح للمزامنة.
ملاحظة: لا تتيح هذه الفئة الاستخدام في عمليات متعددة.
المعلمات | |
---|---|
keys |
Set : مجموعة المفاتيح التي ستتم مزامنتها مع Sandbox
لا يمكن أن تكون هذه القيمة null . |
واجهة getAppFoundSdkSandboxInterfaces
public List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces ()
لجلب قائمة بـ AppOwnedSdkSandboxInterface
التي تم تسجيلها في أحد التطبيقات
المرتجعات | |
---|---|
List<AppOwnedSdkSandboxInterface> |
قائمة فارغة في حال عدم العثور على contactsInfo في الخريطة، وبخلاف ذلك، قائمة من AppOwnedSdkSandboxInterface
لا يمكن أن تكون هذه القيمة null . |
مجموعة getSandboxedSdks
public List<SandboxedSdk> getSandboxedSdks ()
يجلب معلومات عن حِزم تطوير البرامج (SDK) التي يتم تحميلها في وضع الحماية.
المرتجعات | |
---|---|
List<SandboxedSdk> |
قائمة SandboxedSdk تحتوي على جميع حِزم تطوير البرامج (SDK) التي تم تحميلها حاليًا
لا يمكن أن تكون هذه القيمة null . |
GetSdkSandboxState
public static int getSdkSandboxState ()
يعرض الحالة الحالية لمدى توفّر ميزة وضع الحماية لحزمة تطوير البرامج (SDK).
المرتجعات | |
---|---|
int |
القيمة SDK_SANDBOX_STATE_DISABLED أو SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION |
getSyncedSharedPreferencesKeys
public Set<String> getSyncedSharedPreferencesKeys ()
عرض مفاتيح الضبط التي تتم مزامنتها من SharedPreferences
التلقائي للتطبيق إلى
وضع حماية SDK.
المرتجعات | |
---|---|
Set<String> |
لا يمكن أن تكون هذه القيمة null . |
تحميل البيانات
public void loadSdk (String sdkName, Bundle params, Executor executor, OutcomeReceiver<SandboxedSdk, LoadSdkException> receiver)
تعمل هذه السياسة على تحميل حزمة تطوير البرامج (SDK) في عملية JavaScript في وضع الحماية لحزمة تطوير البرامج (SDK).
يتم تحميل مكتبة حِزم تطوير البرامج (SDK) مع sdkName
في عملية وضع الحماية لحزمة تطوير البرامج (SDK) بشكل غير متزامن. تشير رسالة الأشكال البيانية
سيتم إشعار المتصل من خلال receiver
.
يجب أن يفصح المتّصل في الوقت الحالي عن السمة SDKs
التي تعتمد عليها في ملف البيان الخاص به باستخدام العلامة <uses-sdk-library>
. يمكن للمتصل تحميل ملفات SDKs
التي تعتمد عليها فقط في حزمة تطوير البرامج (SDK).
وضع الحماية.
عندما يقوم تطبيق العميل بتحميل أول SDK، سيتم إنشاء عملية وضع حماية جديدة لحزمة SDK إنشاء. إذا سبق وتم إنشاء وضع حماية لتطبيق العميل، ستتضمّن حزمة SDK إضافية. سيتم تحميلها في وضع الحماية ذاته.
لا يمكن طلب واجهة برمجة التطبيقات هذه إلا أثناء تشغيل المتصل في المقدّمة. المكالمات من
الخلفية إلى عرض LoadSdkException
في receiver
.
المعلمات | |
---|---|
sdkName |
String : اسم حزمة SDK التي سيتم تحميلها
لا يمكن أن تكون هذه القيمة null . |
params |
Bundle : مَعلمات إضافية سيتم تمريرها إلى حزمة تطوير البرامج (SDK) على شكل Bundle
على النحو المتفق عليه بين العميل وحزمة SDK.
لا يمكن أن تكون هذه القيمة null . |
executor |
Executor : السمة Executor التي سيتم استدعاء المستلِم فيها
لا يمكن أن تكون هذه القيمة null .
يتم إرسال أحداث معاودة الاتصال والمستمعين من خلال هذا
Executor ، ما يوفّر طريقة سهلة للتحكّم في سلسلة المحادثات
استخدام البيانات المختلفة. لإرسال الأحداث من خلال سلسلة التعليمات الرئيسية
التطبيق، فيمكنك استخدام
Context.getMainExecutor()
وبخلاف ذلك، يُرجى توفير Executor يتم إرسالها إلى سلسلة محادثات مناسبة. |
receiver |
OutcomeReceiver : إمّا تلقّي SandboxedSdk عند إجراء عملية تشغيل ناجحة أو تلقّي LoadSdkException .
لا يمكن أن تكون هذه القيمة null . |
سجِّل AppOwnerSdkSandboxInterface
public void registerAppOwnedSdkSandboxInterface (AppOwnedSdkSandboxInterface appOwnedSdkSandboxInterface)
تسجيل AppOwnedSdkSandboxInterface
لمعالجة التطبيقات.
جارٍ تسجيل "AppOwnedSdkSandboxInterface
" يحمل الاسم نفسه الذي كان يتم استخدامه سابقًا
الواجهة المسجّلة إلى IllegalStateException
.
يشير AppOwnedSdkSandboxInterface#getName()
إلى اسم الواجهة.
المعلمات | |
---|---|
appOwnedSdkSandboxInterface |
AppOwnedSdkSandboxInterface : AppOwnerSdkSandboxInterface المطلوب تسجيله
لا يمكن أن تكون هذه القيمة null . |
removeSdkSandboxProcessDeathCallback
public void removeSdkSandboxProcessDeathCallback (SdkSandboxManager.SdkSandboxProcessDeathCallback callback)
يؤدي هذا الإجراء إلى إزالة إذن SdkSandboxProcessDeathCallback
تمت إضافته سابقًا باستخدام addSdkSandboxProcessDeathCallback(java.util.concurrent.Executor, android.app.sdksandbox.SdkSandboxManager.SdkSandboxProcessDeathCallback)
.
المعلمات | |
---|---|
callback |
SdkSandboxManager.SdkSandboxProcessDeathCallback : السمة SdkSandboxProcessDeathCallback التي تمت إضافتها سابقًا باستخدام
SdkSandboxManager#addSdkSandboxProcessDeathCallback(Executor,
SdkSandboxProcessDeathCallback)
لا يمكن أن تكون هذه القيمة null . |
removeSyncedSharedPreferencesKeys
public void removeSyncedSharedPreferencesKeys (Set<String> keys)
إزالة المفاتيح من مجموعة المفاتيح التي تمت إضافتها باستخدام addSyncedSharedPreferencesKeys(java.util.Set)
سيتم محو المفاتيح التي تمت إزالتها من وضع الحماية لحزمة تطوير البرامج (SDK) إذا سبقت مزامنتها.
المعلمات | |
---|---|
keys |
Set : مجموعة من أسماء المفاتيح التي يجب عدم مزامنتها مع Sandbox
لا يمكن أن تكون هذه القيمة null . |
طلب SurfacePackage
public void requestSurfacePackage (String sdkName, Bundle params, Executor callbackExecutor, OutcomeReceiver<Bundle, RequestSurfacePackageException> receiver)
يرسل طلبًا للحصول على حزمة مساحة عرض إلى حزمة تطوير البرامج (SDK).
بعد أن يتلقّى تطبيق العميل إشارة تفيد بنجاح تحميل حزمة SDK
تمت إضافة SurfaceView
إلى التدرج الهرمي للعرض، وقد يطلب بشكل غير متزامن
SurfacePackage
لعرض ملف شخصي من حزمة SDK.
عندما تكون SurfacePackage
جاهزة، يتم استدعاء OutcomeReceiver#onResult
سيتم استدعاء receiver
الذي تم تمريره. ستحتوي معاودة الاتصال هذه على Bundle
الذي يحتوي على المفتاح SdkSandboxManager#EXTRA_SURFACE_PACKAGE
الذي
القيمة المرتبطة هي SurfacePackage
المطلوبة.
يجب أن يحتوي params
الذي تم تمريره على المفاتيح التالية: EXTRA_WIDTH_IN_PIXELS
، SdkSandboxManager#EXTRA_HEIGHT_IN_PIXELS
،
"SdkSandboxManager#EXTRA_DISPLAY_ID
" و"SdkSandboxManager#EXTRA_HOST_TOKEN
" في حال حذف
أي من هذه المفاتيح مفقود أو غير صالح، سيتم طرح IllegalArgumentException
.
لا يمكن طلب واجهة برمجة التطبيقات هذه إلا أثناء تشغيل المتصل في المقدّمة. المكالمات من
في الخلفية إلى عرض RequestSurfacePackageException في receiver
.
المعلمات | |
---|---|
sdkName |
String : اسم حزمة SDK التي تم تحميلها في وضع الحماية لحزمة تطوير البرامج (SDK)
لا يمكن أن تكون هذه القيمة null . |
params |
Bundle : المَعلمات التي يمرّرها تطبيق العميل إلى حزمة تطوير البرامج (SDK)
لا يمكن أن تكون هذه القيمة null . |
callbackExecutor |
Executor : السمة Executor المطلوب استدعاء معاودة الاتصال عليها
لا يمكن أن تكون هذه القيمة null .
يتم إرسال أحداث معاودة الاتصال والمستمعين من خلال هذا
Executor ، ما يوفّر طريقة سهلة للتحكّم في سلسلة المحادثات
استخدام البيانات المختلفة. لإرسال الأحداث من خلال سلسلة التعليمات الرئيسية
التطبيق، فيمكنك استخدام
Context.getMainExecutor()
وبخلاف ذلك، يُرجى توفير Executor يتم إرسالها إلى سلسلة محادثات مناسبة. |
receiver |
OutcomeReceiver : يؤدي هذا إما إلى إرجاع Bundle في حالة النجاح والذي سيحتوي على المفتاح
SdkSandboxManager#EXTRA_SURFACE_PACKAGE بقيمة SurfacePackage
RequestSurfacePackageException عند التعذُّر.
لا يمكن أن تكون هذه القيمة null . |
الرميات | |
---|---|
IllegalArgumentException |
في حال لم يكن params يحتوي على جميع المفاتيح المطلوبة. |
يُرجى الاطّلاع أيضًا على:
startSdkSandboxActivity
public void startSdkSandboxActivity (Activity fromActivity, IBinder sdkActivityToken)
تؤدي هذه السياسة إلى بدء تشغيل "Activity
" في وضع الحماية الخاص بحزمة تطوير البرامج (SDK).
ستؤدي هذه الدالة إلى تشغيل Activity
جديد في المهمة نفسها لـ fromActivity
الذي تم تمريره وتمريره إلى حزمة تطوير البرامج (SDK) التي شاركت sdkActivityToken
الذي تم تمريره.
طلبًا من حزمة تطوير البرامج (SDK) هذه لإحصاء Activity
.
لن يبدأ Activity
في الحالات التالية:
- التطبيق الذي يستدعي واجهة برمجة التطبيقات هذه يعمل في الخلفية.
- لم يتم ربط
sdkActivityToken
الذي تم تمريره بطلبActivity
. من حزمة SDK التي شاركتها مع تطبيق المتصل. - إنّ حزمة تطوير البرامج (SDK) التي شاركت حزمة "
sdkActivityToken
" التي تم تمريرها أزالت طلبها هذا.Activity
- سبق أن تم إنشاء وضع الحماية
Activity
.
المعلمات | |
---|---|
fromActivity |
Activity : سيتم استخدام Activity لبدء وضع الحماية الجديد Activity من خلال طلب Activity#startActivity(Intent) من عليه.
لا يمكن أن تكون هذه القيمة null . |
sdkActivityToken |
IBinder : المعرّف الذي تشاركه حزمة تطوير البرامج (SDK) التي تطلب Activity
لا يمكن أن تكون هذه القيمة null . |
أمر UnloadSdk
public void unloadSdk (String sdkName)
يؤدي هذا الخيار إلى إلغاء تحميل حزمة تطوير برامج (SDK) سبق أن حمَّلها المتصل.
ليس هناك ما يضمن أنّه سيتم إخلاء الذاكرة المخصّصة لحزمة تطوير البرامج (SDK) هذه على الفور. الكل
المكالمات اللاحقة إلى requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver)
سيفشل اختبار القيمة sdkName
المحددة.
لا يمكن طلب واجهة برمجة التطبيقات هذه إلا أثناء تشغيل المتصل في المقدّمة. المكالمات من
الخلفية إلى رمي SecurityException
.
المعلمات | |
---|---|
sdkName |
String : اسم حزمة SDK المطلوب إلغاء تحميلها
لا يمكن أن تكون هذه القيمة null . |
إلغاء تسجيل AppOwnerSdkSandboxInterface
public void unregisterAppOwnedSdkSandboxInterface (String name)
إلغاء تسجيل ERROR(/AppOwnedSdkSandboxInterfaces)
لمعالجة عملية التطبيق.
المعلمات | |
---|---|
name |
String : الاسم الذي تم تسجيل AppOwnerSdkSandboxInterface بموجبه.
لا يمكن أن تكون هذه القيمة null . |