AppSearch, eine geräteinterne Indexierungs- und strukturierte Suchmaschine, wurde als APEX in Android 12 ausgeliefert. In Android 13 wird AppSearch als Mainline-Modul ausgeliefert.
Motivation
Um eine konsistente Implementierung von AppSearch im gesamten Android-Ökosystem sicherzustellen und die Updatefähigkeit zu unterstützen.
Vorteile:
- Aktualisieren von AppSearch über den Play Store zulassen
- Stellen Sie die Einhaltung der CDD-Anforderungen von AppSearch sicher
Einzelheiten
- Über AppSearch-APIs erfasste Daten verbleiben auf dem Gerät des Benutzers (mit Ausnahme von aggregierten Metrikdaten, die zu Leistungsoptimierungszwecken verwendet werden).
- Eine schnelle, Mobile-First-Storage-Implementierung mit geringer E/A-Nutzung
- Hocheffiziente Indizierung und Abfrage großer Datenmengen
- Mehrsprachige Unterstützung, wie Englisch, Spanisch und CJKT
- Relevanz-Ranking und Nutzungs-Scoring
AppSearch-Architektur
Abbildung 1 hebt AppSearch-Konzepte sowie die Systemdienstprozessgrenze hervor.
Abbildung 1. Architektur des AppSearch-Moduls
Modulgrenze
AppSearch Mainline Apex -
com.android.appsearch
- AppSearch-API-Oberfläche (Java)
- Codespeicherort:
frameworks/base/apex/appsearch/framework
- Prozess: BOOT_CLASS_PATH
- Codespeicherort:
- AppSearchManagerService (Java)
- Codespeicherort:
frameworks/base/apex/appsearch/service
- Prozess: system_server
- Codespeicherort:
- Native Icing-Bibliothek (C++)
- Code-Ort:
external/icing
- Prozess: system_server
- Code-Ort:
- AppSearch-API-Oberfläche (Java)
HAL-Schnittstelle/Implementierungen (C++)
- N / A
Siehe Modularchitekturdiagramm in Abbildung 1.
Paketformat
Die Hauptfunktionen dieses Moduls sind im APEX-Paket com.android.appsearch
.
Abhängigkeiten
- libicu
- libprotobuf-cpp-lite
- ndk
Anpassung
Dieses Modul ist nicht anpassbar.