AppSearch, un moteur d'indexation et de recherche structurée sur appareil, a été livré en tant qu'APEX dans Android 12. Dans Android 13, AppSearch est livré en tant que module Mainline.
Motivation
Garantir une mise en œuvre cohérente d’AppSearch dans l’écosystème Android et prendre en charge la possibilité de mise à jour.
Avantages:
- Autoriser la mise à jour d'AppSearch via Play Store
- Assurer la conformité aux exigences AppSearch CDD
Détails
- Les données collectées via les API AppSearch restent sur l'appareil de l'utilisateur (à l'exception des données de métriques agrégées, qui sont utilisées à des fins d'optimisation des performances).
- Une implémentation de stockage rapide et mobile avec une faible utilisation des E/S
- Indexation et interrogation très efficaces sur de grands ensembles de données
- Prise en charge multilingue, comme l'anglais, l'espagnol et le CJKT
- Classement de pertinence et notation d'utilisation
Architecture d'AppSearch
La figure 1 met en évidence les concepts d'AppSearch ainsi que les limites du processus de service système.
Figure 1. Architecture du module AppSearch
Limite du module
AppSearch Mainline Apex -
com.android.appsearch
- Surface de l'API AppSearch (Java)
- Emplacement du code :
frameworks/base/apex/appsearch/framework
- Processus : BOOT_CLASS_PATH
- Emplacement du code :
- AppSearchManagerService (Java)
- Emplacement du code :
frameworks/base/apex/appsearch/service
- Processus : serveur_système
- Emplacement du code :
- Bibliothèque native de givrage (C++)
- Emplacement du code :
external/icing
- Processus : serveur_système
- Emplacement du code :
- Surface de l'API AppSearch (Java)
Interface/implémentations HAL (C++)
- N / A
Reportez-vous au schéma d'architecture du module dans la figure 1.
Format du colis
Les principales fonctions de ce module sont incluses dans le package APEX com.android.appsearch
.
Dépendances
- Libécue
- libprotobuf-cpp-lite
- ndk
Personnalisation
Ce module n'est pas personnalisable.