AppSearch

AppSearch, czyli indeksowane na urządzeniu, i ustrukturyzowana wyszukiwarka, była dostępna w Androidzie 12 jako APEX. W Androidzie 13 wyszukiwarka AppSearch jest dostarczana jako moduł Mainline.

Motywacja

Aby zapewnić spójne wdrażanie AppSearch w ekosystemie Androida oraz obsługiwać możliwość aktualizacji.

Zalety:

  • Zezwalanie na aktualizowanie AppSearch przez Sklep Play
  • Zapewnienie zgodności z wymaganiami dotyczącymi ochrony danych w przypadku usługi AppSearch

Szczegóły

  • Dane zbierane przez interfejsy AppSearch API pozostają na urządzeniu użytkownika (z wyjątkiem danych zbiorczych, które są używane do optymalizacji wydajności).
  • Szybka implementacja pamięci z optymalizacją pod kątem urządzeń mobilnych i małą liczbą operacji wejścia/wyjścia
  • Bardzo wydajne indeksowanie i wybieranie dużych zbiorów danych
  • obsługa wielu języków, takich jak angielski, hiszpański i koreański;
  • Ranking trafności i ocena wykorzystania

Architektura AppSearch

Rysunek 1 przedstawia pojęcia AppSearch oraz granicę procesu usługi systemowej.

Architektura modułu AppSearch

Rysunek 1. Architektura modułu AppSearch

Granica modułu

  • AppSearch Mainline Apex – com.android.appsearch

    • Interfejs AppSearch API (Java)
      • Lokalizacja kodu: frameworks/base/apex/appsearch/framework
      • Proces: BOOT_CLASS_PATH
    • AppSearchManagerService (Java)
      • Lokalizacja kodu: frameworks/base/apex/appsearch/service
      • Proces: system_server
    • Biblioteka natywnych elementów Icing (C++)
      • Lokalizacja kodu: external/icing
      • Proces: system_server
  • Interfejs HAL i implementacje (C++)

    • Nie dotyczy

Zapoznaj się ze schematem architektury modułu na rys. 1.

Format pakietu

Główne funkcje tego modułu są zawarte w pakiecie APEX.com.android.appsearch

Zależności

  • libicu
  • libprotobuf-cpp-lite
  • ndk

Dostosowywanie

Ten moduł nie jest konfigurowalny.