مدير التخصيص على الجهاز
public
class
OnDevicePersonalizationManager
extends Object
java.lang.Object | |
↳ | android.adservices.ondevicepersonalization.OnDevicePersonalizationManager |
يوفر OnDevicePersonalizationManager واجهات برمجة التطبيقات التي تتيح للتطبيقات تحميل
IsolatedService
في عملية معزولة والتفاعل معها.
يمكن للتطبيق أن يطلب إذن IsolatedService
لإنشاء محتوى للعرض.
ضمن SurfaceView
ضمن العرض الهرمي للتطبيق، وكذلك كتابة
نتائج دائمة لمساحة التخزين على الجهاز، والتي يمكن استهلاكها من خلال ميزة "إحصاءات Google" الموحّدة
للتحليل الإحصائي على جميع الأجهزة أو عن طريق التعلّم الموحّد لتدريب النماذج. القيم المعروضة
لا يمكن الوصول مباشرةً إلى المحتوى والإخراج المستمر من خلال تطبيق الاتصال.
ملخّص
الطرق العامة | |
---|---|
void
|
execute(ComponentName handler, PersistableBundle params, Executor executor, OutcomeReceiver<List<SurfacePackageToken>, Exception> receiver)
لتنفيذ |
void
|
requestSurfacePackage(SurfacePackageToken surfacePackageToken, IBinder surfaceViewHostToken, int displayId, int width, int height, Executor executor, OutcomeReceiver<SurfaceControlViewHost.SurfacePackage, Exception> receiver)
تطلب إدخال |
الطرق المكتسبة | |
---|---|
الطرق العامة
التنفيذ
public void execute (ComponentName handler, PersistableBundle params, Executor executor, OutcomeReceiver<List<SurfacePackageToken>, Exception> receiver)
لتنفيذ IsolatedService
في وضع الحماية OnDevicePersonalization. تشير رسالة الأشكال البيانية
تربط المنصة بـ IsolatedService
المحدد في عملية منفصلة
ويتصل بـ IsolatedWorker#onExecute(ExecuteInput, java.util.function.Consumer)
مع المعلمات التي يوفرها المتصل. عند انتهاء تنفيذ IsolatedService
،
تقوم المنصة بإرجاع الرموز التي تشير إلى النتائج من الخدمة إلى المتصل.
ويمكن استخدام هذه الرموز لاحقًا لعرض النتائج في
SurfaceView
ضمن تطبيق الاتصال.
المعلمات | |
---|---|
handler |
ComponentName : ComponentName من IsolatedService
لا يمكن أن تكون هذه القيمة null . |
params |
PersistableBundle : PersistableBundle يتم تمريره من تطبيق الاتصال إلى
IsolatedService تم تحديد المحتوى المتوقّع لهذه المَعلمة.
من قِبل "IsolatedService " ولا تفسر النظام الأساسي هذه المَعلمة.
لا يمكن أن تكون هذه القيمة null . |
executor |
Executor : السمة Executor المطلوب استدعاء معاودة الاتصال عليها.
لا يمكن أن تكون هذه القيمة null .
يتم إرسال أحداث معاودة الاتصال والمستمعين من خلال هذا
Executor ، ما يوفّر طريقة سهلة للتحكّم في سلسلة المحادثات
استخدام البيانات المختلفة. لإرسال الأحداث من خلال سلسلة التعليمات الرئيسية
التطبيق، فيمكنك استخدام
Context.getMainExecutor()
وبخلاف ذلك، يُرجى توفير Executor يتم إرسالها إلى سلسلة محادثات مناسبة. |
receiver |
OutcomeReceiver : يؤدي ذلك إلى عرض قائمة تضم كائنات SurfacePackageToken ، بحيث يكون كلٌ منها عبارة عن
مرجع غير شفاف إلى RenderingConfig يتم إرجاعه بواسطة
IsolatedService أو Exception عند التعذُّر. تم إرجاع
يمكن استخدام SurfacePackageToken كائن في
طلب requestSurfacePackage(android.adservices.ondevicepersonalization.SurfacePackageToken, android.os.IBinder, int, int, int, java.util.concurrent.Executor, android.os.OutcomeReceiver) لعرض النتيجة في طريقة عرض. إن تطبيق الاتصال
يجب أن تتفق IsolatedService على الحجم المتوقّع لهذه القائمة.
إنّ أحد الإدخالات في القائمة المعروضة التي تتضمّن SurfacePackageToken عناصر قد يكون فارغًا
تشير إلى عدم وجود مخرجات في هذه الخدمة لتلك المساحة المحددة.
في حال حدوث خطأ، يعرض المستلِم أحد الاستثناءات التالية:
عرض PackageManager.NameNotFoundException إذا كان المعالج
الحزمة غير مثبّتة أو لا تحتوي على بيان ODP صالح.
تعرض ClassNotFoundException إذا لم يتم العثور على فئة المعالج.
عرض OnDevicePersonalizationException في حال تعذُّر تنفيذ المعالِج. |
طلب SurfacePackage
public void requestSurfacePackage (SurfacePackageToken surfacePackageToken, IBinder surfaceViewHostToken, int displayId, int width, int height, Executor executor, OutcomeReceiver<SurfaceControlViewHost.SurfacePackage, Exception> receiver)
تطلب إدخال SurfaceControlViewHost.SurfacePackage
في
SurfaceView
داخل تطبيق الاتصال ستحتوي الحزمة السطحية على
"View
" الذي يتضمن المحتوى نتيجة إجراء مكالمة سابقة إلى
#execute(ComponentName, PersistableBundle, Executor, OutcomeReceiver)
يجري في
وضع الحماية OnDevicePersonalization.
المعلمات | |
---|---|
surfacePackageToken |
SurfacePackageToken : إشارة إلى SurfacePackageToken تم إرجاعه بواسطة
مكالمة لـ #execute(ComponentName, PersistableBundle, Executor, OutcomeReceiver) .
لا يمكن أن تكون هذه القيمة null . |
surfaceViewHostToken |
IBinder : الرمز المضيف للرمز SurfaceView ، وهو
الذي تم إرجاعه من خلال SurfaceView.getHostToken() بعد
تمت إضافة SurfaceView إلى العرض الهرمي.
لا يمكن أن تكون هذه القيمة null . |
displayId |
int : رقم تعريف العدد الصحيح للعرض المنطقي المطلوب عرض
SurfaceControlViewHost.SurfacePackage ، تم إرجاعه بواسطة
Context.getDisplay().getDisplayId() |
width |
int : عرض SurfaceControlViewHost.SurfacePackage
بالبكسل. |
height |
int : ارتفاع SurfaceControlViewHost.SurfacePackage
بالبكسل. |
executor |
Executor : السمة Executor المطلوب استدعاء معاودة الاتصال عليها
لا يمكن أن تكون هذه القيمة null .
يتم إرسال أحداث معاودة الاتصال والمستمعين من خلال هذا
Executor ، ما يوفّر طريقة سهلة للتحكّم في سلسلة المحادثات
استخدام البيانات المختلفة. لإرسال الأحداث من خلال سلسلة التعليمات الرئيسية
التطبيق، فيمكنك استخدام
Context.getMainExecutor()
وبخلاف ذلك، يُرجى توفير Executor يتم إرسالها إلى سلسلة محادثات مناسبة. |
receiver |
OutcomeReceiver : يؤدي هذا إما إلى إرجاع
SurfaceControlViewHost.SurfacePackage على النجاح، أو
Exception عند التعذُّر. نوع الاستثناء هو
OnDevicePersonalizationException في حال تعذُّر تنفيذ المعالِج.
لا يمكن أن تكون هذه القيمة null . |