A partir de 27 de março de 2025, recomendamos usar android-latest-release
em vez de aosp-main
para criar e contribuir com o AOSP. Para mais informações, consulte Mudanças no AOSP.
AppSearch
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
O AppSearch, um mecanismo de indexação e pesquisa estruturada no dispositivo, foi enviado como
um APEX no Android 12. No Android
13, o AppSearch é enviado como um módulo Mainline.
Motivação
Para garantir uma implementação consistente do AppSearch em todo o ecossistema Android
e oferecer suporte à capacidade de atualização.
Vantagens:
- Permitir a atualização do AppSearch pela Play Store
- Garantir a conformidade com os requisitos do CDD do AppSearch
Detalhes
- Os dados coletados pelas APIs do AppSearch permanecem no dispositivo do usuário,
exceto os dados de métricas agregadas, que são usados para fins de otimização
de desempenho.
- Uma implementação de armazenamento rápida e com foco em dispositivos móveis com uso de E/S baixo
- Indexação e consulta altamente eficientes em grandes conjuntos de dados
- Suporte a vários idiomas, como inglês, espanhol e chinês tradicional
- Classificação de relevância e pontuação de uso
Arquitetura do AppSearch
A Figura 1 destaca os conceitos do AppSearch e o limite do processo
do serviço do sistema.
Figura 1. Arquitetura do módulo do AppSearch
Limite do módulo
Consulte o diagrama de arquitetura do módulo na Figura 1.
As funções principais deste módulo estão incluídas no pacote APEX
com.android.appsearch
.
Dependências
- libicu
- libprotobuf-cpp-lite
- ndk
Personalização
Esse módulo não é personalizável.
O conteúdo e os exemplos de código nesta página estão sujeitos às licenças descritas na Licença de conteúdo. Java e OpenJDK são marcas registradas da Oracle e/ou suas afiliadas.
Última atualização 2025-07-27 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-07-27 UTC."],[],[],null,["# AppSearch, an on-device indexing and structured search engine, was shipped as\nan APEX in Android 12. In Android\n13, AppSearch is shipped as a Mainline module.\n\nMotivation\n----------\n\nTo ensure a consistent implementation of AppSearch across the Android ecosystem\nand support updateability.\n\nBenefits:\n\n- Allow updating AppSearch via Play Store\n- Ensure compliance with the AppSearch CDD requirements\n\nDetails\n-------\n\n- Data collected through AppSearch APIs remains on the user's device (except aggregated metrics data, which is used for performance optimization purposes).\n- A fast, mobile-first storage implementation with low I/O use\n- Highly efficient indexing and querying over large data sets\n- Multi-language support, such as English, Spanish and CJKT\n- Relevance ranking and usage scoring\n\nAppSearch architecture\n----------------------\n\nFigure 1 highlights AppSearch concepts as well as the system service\nprocess boundary.\n\n**Figure 1.** AppSearch module architecture\n\nModule boundary\n---------------\n\n- AppSearch Mainline Apex - `com.android.appsearch`\n\n - AppSearch API surface (Java)\n - Code Location: `frameworks/base/apex/appsearch/framework`\n - Process: \u003cvar translate=\"no\"\u003eBOOT_CLASS_PATH\u003c/var\u003e\n - AppSearchManagerService (Java)\n - Code Location: `frameworks/base/apex/appsearch/service`\n - Process: system_server\n - Icing Native library (C++)\n - Code Location: `external/icing`\n - Process: system_server\n- HAL Interface/Implementations (C++)\n\n - N/A\n\nRefer to the module architecture diagram in Figure 1.\n\nPackage format\n--------------\n\nThe main functions of this module are included in the APEX package\n`com.android.appsearch`.\n\nDependencies\n------------\n\n- libicu\n- libprotobuf-cpp-lite\n- ndk\n\nCustomization\n-------------\n\nThis module is not customizable."]]