الخدمات الإضافية

تُحدِّث وحدة ExtServices مكوِّنات إطار العمل لتتوافق مع وظائف نظام التشغيل الأساسية. مثل ترتيب الإشعارات واستراتيجيات مطابقة النص تلقائيًا وذاكرة التخزين المؤقت وحزمة مراقب النظام والخدمات الأخرى التي تعمل باستمرار. هذه الوحدة قابل للتحديث، أي أنّه يمكن أن يتلقّى تحديثات للوظائف خارج نطاق دورة إصدار Android.

مكوّنات الخدمة

تحتوي الوحدة ExtServices على الخدمات التالية.

خدمة DisplayHashingService

في Android 12، يُستخدَم DisplayHashingService للأغراض التالية: إنشاء مثيل DisplayHash للمخزن المؤقت المحدد. يُستخدم أيضًا للتحقق من أن النظام قد تم إنشاء تجزئة عرض معينة. فعندما لإنشاء تجزئة عرض، يمكن للمتصل تحديد أي من البيانات خوارزميات التجزئة التي ترغب في استخدامها.

خدمة TextClassifierService

تشير رسالة الأشكال البيانية TextClassifierService إعادة مكون الخدمة TextClassifier واجهات برمجة التطبيقات وميزات Android مثل اختيار النص الذكي والاقتراحات الذكية في الإشعارات. تحتوي وحدة ExtServices على مصنِّف النص التلقائي، الذي يتم التحقق منه من خلال اختبار CTS TextClassifierPolicyTest.java

إذا لزم الأمر، يمكنك تهيئة خدمة مصنف نصوص مخصصة من خلال تحديد config_defaultTextClassifierPackage بوصة config.xml يمكن أن تعتمد مصنِّفات النص المخصّصة على مصنِّف النص التلقائي من خلال استدعاء TextClassifierService.getDefaultTextClassifierImplementation(Context) للحصول على مثيل منها.

خدمة الاقتراحات المضمّنة

يعمل مكوِّن خدمة InlineSuggestionRenderService على تفعيل الاقتراحات المضمّنة ليتم عرضه في شريط اقتراحات لوحة المفاتيح ويتم استدعاء هذه الخدمة لعرض عنصر View يحتوي على الاقتراح المضمّن لمسار "الملء التلقائي المضمّن" الجديد. التنفيذ التلقائي لاستدعاءات خدمة العرض هذه في androidx.autofill.inline.Renderer لعرض الاقتراح تم التحقق من هذا السلوك من خلال اختبارات CTS في /autofillservice/cts/inline/

اسم الحزمة

يجب ضبط إعدادات الأجهزة التي تعمل بنظام التشغيل Android 11 config_servicesExtensionPackage (بوصة frameworks/base/core/res/res/values/config.xml) إلى حزمة ExtServices اسم (com.android.ext.services). يتم التحقق من هذا التغيير في الإعدادات بواسطة اختبار CTS cts/tests/tests/os/src/android/os/cts/RequiredComponentsTest.java

حدود الوحدة

في Android 12، تشمل خدمات ExtServices تم نقل رمز الوحدة من frameworks/base/apex/extservices. (هذا دليل فرعي من frameworks/base project) أو packages/modules/ExtServices

في ما يلي بنية مشروع packages/modules/ExtServices الجديدة:

  • apex/ (ملفات من frameworks/base/apex/extservices)
  • java/ (ملفات من packages/modules/ExtServices/res، packages/modules/ExtServices/src، packages/modules/ExtServices/tests، والملفات لميزة جديدة)
  • jni/ (ملفات لميزة جديدة)
  • native/ (ملفات لميزة جديدة)

حدود وحدة ExtServices موجودة في packages/modules/ExtServices. جهاز Android 11 يؤدي أيضًا إلى نقل العديد من عمليات تنفيذ TextClassifier صف واحد من إجمالي frameworks/base/core/.

تنسيق الوحدة

في نظام Android 11، تشمل وحدة "الخدمات الإضافية" (com.android.ext.services) في APEX . وفي نظام التشغيل Android 10، تكون هذه الوحدة بتنسيق APK.

التخصيص

يمكنك ضبط نص مخصّص في Android 11 خدمة المصنِّف التي تستدعي النص التلقائي المصنِّف (ولكنّ ذلك لا يُنصح بهذا الإجراء). ضِمن لنظام التشغيل Android 10، لا توفّر وحدة ExtServices (خدمات إضافية). وخيارات التخصيص.

الاختبار

تتحقّق "مجموعة اختبار التوافق مع Android" (CTS) من وحدة ExtServices. من خلال تشغيل مجموعة شاملة من اختبارات CTS على كل وحدة . بالإضافة إلى ذلك، تحتوي Mainline Test Suite (MTS) على العديد من اختبارات ExtServices. في ما يلي القائمة الكاملة لاختبارات ExtServices: