AppSearch, un motor de búsqueda estructurada e indexación en el dispositivo, se envió como un APEX en Android 12. En Android 13, AppSearch se envía como un módulo principal.
Motivación
Para garantizar una implementación coherente de AppSearch en todo el ecosistema de Android y admitir la capacidad de actualización.
Beneficios:
- Permitir actualizar AppSearch a través de Play Store
- Garantice el cumplimiento de los requisitos de CDD de AppSearch
Detalles
- Los datos recopilados a través de las API de AppSearch permanecen en el dispositivo del usuario (excepto los datos de métricas agregados, que se utilizan con fines de optimización del rendimiento).
- Una implementación de almacenamiento rápida y móvil con bajo uso de E/S
- Indexación y consultas altamente eficientes sobre grandes conjuntos de datos
- Soporte multilingüe, como inglés, español y CJKT
- Clasificación de relevancia y puntuación de uso
Arquitectura de búsqueda de aplicaciones
La figura 1 destaca los conceptos de AppSearch, así como el límite del proceso de servicio del sistema.
Figura 1. Arquitectura del módulo AppSearch
Límite del módulo
Apex principal de AppSearch -
com.android.appsearch
- Superficie de la API de AppSearch (Java)
- Ubicación del código:
frameworks/base/apex/appsearch/framework
- Proceso: BOOT_CLASS_PATH
- Ubicación del código:
- AppSearchManagerService (Java)
- Ubicación del código:
frameworks/base/apex/appsearch/service
- Proceso: system_server
- Ubicación del código:
- Biblioteca Nativa Icing (C++)
- Ubicación del código:
external/icing
- Proceso: system_server
- Ubicación del código:
- Superficie de la API de AppSearch (Java)
Interfaz HAL/Implementaciones (C++)
- N / A
Consulte el diagrama de arquitectura del módulo en la Figura 1.
formato de paquete
Las funciones principales de este módulo están incluidas en el paquete APEX com.android.appsearch
.
dependencias
- libicu
- libprotobuf-cpp-lite
- ndk
personalización
Este módulo no es personalizable.