تم طرح AppSearch، وهو محرّك بحث منظَّم وفهرس على الجهاز، كأحد تطبيقات APEX في Android 12. في الإصدار 13 من Android، يتم شحن AppSearch كوحدة Mainline.
الحافز
لضمان تنفيذ AppSearch بشكلٍ متسق في منظومة Android المتكاملة وإتاحة إمكانية التحديث
المزايا:
- السماح بتحديث AppSearch من خلال "متجر Play"
- التأكّد من الامتثال لمتطلبات CDD في AppSearch
التفاصيل
- تظل البيانات التي يتم جمعها من خلال واجهات برمجة تطبيقات AppSearch على جهاز المستخدم (باستثناء بيانات المقاييس المجمّعة التي تُستخدَم لأغراض تحسين الأداء ).
- تنفيذ سريع لمساحة التخزين يمنح الأولوية للأجهزة الجوّالة مع استخدام منخفض لعملية الإدخال/الإخراج
- فهرسة وطلبات بحث عالية الكفاءة على مجموعات البيانات الكبيرة
- التوافق مع لغات متعددة، مثل الإنجليزية والإسبانية وCJKT
- ترتيب مدى الصلة بالموضوع وتقييم الاستخدام
بنية AppSearch
يوضّح الشكل 1 مفاهيم AppSearch بالإضافة إلى حدود عملية خدمة النظام.
الشكل 1: بنية وحدة AppSearch
حدود الوحدة
AppSearch Mainline Apex -
com.android.appsearch
- واجهة برمجة التطبيقات AppSearch API (Java)
- الموقع الجغرافي للرمز:
frameworks/base/apex/appsearch/framework
- العملية: BOOT_CLASS_PATH
- الموقع الجغرافي للرمز:
- AppSearchManagerService (Java)
- الموقع الجغرافي للرمز:
frameworks/base/apex/appsearch/service
- العملية: system_server
- الموقع الجغرافي للرمز:
- مكتبة Icing Native (C++)
- الموقع الجغرافي للرمز:
external/icing
- العملية: system_server
- الموقع الجغرافي للرمز:
- واجهة برمجة التطبيقات AppSearch API (Java)
واجهة HAL/عمليات التنفيذ (C++)
- لا ينطبق
راجِع المخطّط البياني لبنية الوحدة في الشكل 1.
تنسيق الحزمة
يتم تضمين الوظائف الرئيسية لهذه الوحدة في حزمة APEX
com.android.appsearch
.
التبعيات
- libicu
- libprotobuf-cpp-lite
- ndk
التخصيص
لا يمكن تخصيص هذه الوحدة.