AppSearch, eine On-Device-Indexierungs- und strukturierte Suchmaschine, wurde als APEX in Android 12 ausgeliefert. In Android 13 wird AppSearch als Mainline-Modul ausgeliefert.
Ziel
Um eine konsistente Implementierung von AppSearch im gesamten Android-Ökosystem zu gewährleisten und Aktualisierungen zu unterstützen.
Vorteile:
- AppSearch-Updates über den Play Store zulassen
- Compliance mit den CDD-Anforderungen für AppSearch sicherstellen
Details
- Daten, die über AppSearch-APIs erhoben werden, verbleiben auf dem Gerät des Nutzers (mit Ausnahme von aggregierten Messwertdaten, die zur Leistungsoptimierung verwendet werden).
- Schnelle, mobile Speicherimplementierung mit geringer I/O-Nutzung
- Hocheffiziente Indexierung und Abfrage großer Datasets
- Mehrsprachiger Support, z. B. für Englisch, Spanisch und CJKT
- Relevanzranking und Nutzungsscores
AppSearch-Architektur
Abbildung 1 zeigt die AppSearch-Konzepte sowie die Prozessgrenze des Systemdienstes.
Abbildung 1: AppSearch-Modularchitektur
Modulgrenze
AppSearch Mainline Apex –
com.android.appsearch
- AppSearch API-Oberfläche (Java)
- Code-Standort:
frameworks/base/apex/appsearch/framework
- Prozess: BOOT_CLASS_PATH
- Code-Standort:
- AppSearchManagerService (Java)
- Code-Standort:
frameworks/base/apex/appsearch/service
- Prozess: system_server
- Code-Standort:
- Icing Native-Bibliothek (C++)
- Code-Standort:
external/icing
- Prozess: system_server
- Code-Standort:
- AppSearch API-Oberfläche (Java)
HAL-Schnittstelle/Implementierungen (C++)
- –
Sehen Sie sich das Modularchitekturdiagramm in Abbildung 1 an.
Paketformat
Die Hauptfunktionen dieses Moduls sind im APEX-Paket com.android.appsearch
enthalten.
Abhängigkeiten
- libicu
- libprotobuf-cpp-lite
- ndk
Personalisierung
Dieses Modul kann nicht angepasst werden.