AppSearch, mesin telusur terstruktur dan pengindeksan di perangkat, dikirim sebagai APEX di Android 12. Di Android 13, AppSearch dikirim sebagai modul Mainline.
Motivasi
Untuk memastikan penerapan AppSearch yang konsisten di seluruh ekosistem Android dan mendukung kemampuan update.
Manfaat:
- Mengizinkan update AppSearch melalui Play Store
- Memastikan kepatuhan terhadap persyaratan CDD AppSearch
Detail
- Data yang dikumpulkan melalui AppSearch API tetap berada di perangkat pengguna (kecuali data metrik gabungan, yang digunakan untuk tujuan optimasi performa).
- Implementasi penyimpanan yang cepat dan mengutamakan perangkat seluler dengan penggunaan I/O yang rendah
- Pengindeksan dan pembuatan kueri yang sangat efisien pada set data besar
- Dukungan multibahasa, seperti bahasa Inggris, Spanyol, dan CJKT
- Peringkat relevansi dan skor penggunaan
Arsitektur AppSearch
Gambar 1 menyoroti konsep AppSearch serta batas proses layanan sistem.
Gambar 1. Arsitektur modul AppSearch
Batas modul
AppSearch Mainline Apex -
com.android.appsearch
- Platform AppSearch API (Java)
- Lokasi Kode:
frameworks/base/apex/appsearch/framework
- Proses: BOOT_CLASS_PATH
- Lokasi Kode:
- AppSearchManagerService (Java)
- Lokasi Kode:
frameworks/base/apex/appsearch/service
- Proses: system_server
- Lokasi Kode:
- Library Icing Native (C++)
- Lokasi Kode:
external/icing
- Proses: system_server
- Lokasi Kode:
- Platform AppSearch API (Java)
Antarmuka/Implementasi HAL (C++)
- T/A
Lihat diagram arsitektur modul pada Gambar 1.
Format paket
Fungsi utama modul ini disertakan dalam paket APEX
com.android.appsearch
.
Dependensi
- libicu
- libprotobuf-cpp-lite
- ndk
Penyesuaian
Modul ini tidak dapat disesuaikan.