AppSearch

AppSearch, mesin telusur terstruktur dan pengindeksan di perangkat, dikirimkan sebagai APEX di Android 12. Di Android 13, AppSearch dikirimkan 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 API AppSearch tetap berada di perangkat pengguna (kecuali data metrik gabungan, yang digunakan untuk tujuan pengoptimalan performa).
  • Implementasi penyimpanan yang cepat dan mengutamakan seluler dengan penggunaan I/O yang rendah
  • Pengindeksan dan kueri yang sangat efisien pada set data besar
  • Dukungan multibahasa, seperti Inggris, Spanyol, dan CJKT
  • Peringkat relevansi dan pemberian skor penggunaan

Arsitektur AppSearch

Gambar 1 menyoroti konsep AppSearch serta batas proses layanan sistem.

Arsitektur modul AppSearch

Gambar 1. Arsitektur modul AppSearch

Batas modul

  • Apex Mainline AppSearch - com.android.appsearch

    • Permukaan AppSearch API (Java)
      • Lokasi Kode: frameworks/base/apex/appsearch/framework
      • Proses: BOOT_CLASS_PATH
    • AppSearchManagerService (Java)
      • Lokasi Kode: frameworks/base/apex/appsearch/service
      • Proses: system_server
    • Pustaka Icing Native (C++)
      • Lokasi Kode: external/icing
      • Proses: system_server
  • 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.