AppSearch، یک موتور جستجوی ساختار یافته و نمایه سازی روی دستگاه، به عنوان APEX در Android 12 ارسال شد. در Android 13، AppSearch به عنوان یک ماژول Mainline ارسال می شود.
انگیزه
برای اطمینان از اجرای مداوم AppSearch در سراسر اکوسیستم Android و پشتیبانی از قابلیت به روز رسانی.
مزایا:
- به روز رسانی AppSearch از طریق فروشگاه Play را مجاز کنید
- از انطباق با الزامات AppSearch CDD اطمینان حاصل کنید
جزئیات
- دادههای جمعآوریشده از طریق AppSearch API در دستگاه کاربر باقی میماند (بهجز دادههای متریک انبوه، که برای اهداف بهینهسازی عملکرد استفاده میشود).
- یک پیاده سازی ذخیره سازی سریع و اول موبایل با استفاده کم ورودی/خروجی
- نمایه سازی و پرس و جو بسیار کارآمد در مجموعه داده های بزرگ
- پشتیبانی از چند زبان مانند انگلیسی، اسپانیایی و CJKT
- رتبه بندی مرتبط و امتیاز استفاده
معماری AppSearch
شکل 1 مفاهیم AppSearch و همچنین مرز فرآیند خدمات سیستم را برجسته می کند.
شکل 1. معماری ماژول AppSearch
مرز ماژول
AppSearch Mainline Apex -
com.android.appsearch
- سطح API AppSearch (جاوا)
- محل کد:
frameworks/base/apex/appsearch/framework
- فرآیند: BOOT_CLASS_PATH
- محل کد:
- AppSearchManagerService (جاوا)
- محل کد:
frameworks/base/apex/appsearch/service
- فرآیند: system_server
- محل کد:
- کتابخانه Icing Native (C++)
- محل کد:
external/icing
- فرآیند: system_server
- محل کد:
- سطح API AppSearch (جاوا)
رابط HAL / پیاده سازی (C++)
- N/A
به نمودار معماری ماژول در شکل 1 مراجعه کنید.
قالب بسته
توابع اصلی این ماژول در بسته APEX com.android.appsearch
گنجانده شده است.
وابستگی ها
- لیبیکو
- libprotobuf-cpp-lite
- ndk
سفارشی سازی
این ماژول قابل تنظیم نیست.