O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Pesquisa de aplicativos

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

O AppSearch, um mecanismo de pesquisa estruturado e indexação no dispositivo, foi fornecido como um APEX no Android 12. No Android 13, o AppSearch é fornecido como um módulo Mainline.

Motivação

Para garantir uma implementação consistente do AppSearch em todo o ecossistema Android e oferecer suporte à atualização.

Benefícios:

  • Permitir atualização do AppSearch via Play Store
  • Garanta a conformidade com os requisitos do AppSearch CDD

Detalhes

  • Os dados coletados por meio de APIs do AppSearch permanecem no dispositivo do usuário (exceto dados de métricas agregadas, que são usados ​​para fins de otimização de desempenho).
  • Uma implementação de armazenamento rápida e móvel com baixo uso de E/S
  • Indexação e consulta altamente eficientes em grandes conjuntos de dados
  • Suporte multilíngue, como inglês, espanhol e CJKT
  • Classificação de relevância e pontuação de uso

Arquitetura do AppSearch

A Figura 1 destaca os conceitos do AppSearch, bem como o limite do processo de serviço do sistema.

Arquitetura do módulo AppSearch

Figura 1. Arquitetura do módulo AppSearch

Limite do módulo

  • AppSearch Mainline Apex - com.android.appsearch

    • Superfície da API AppSearch (Java)
      • Localização do código: frameworks/base/apex/appsearch/framework
      • Processo: BOOT_CLASS_PATH
    • AppSearchManagerService (Java)
      • Localização do código: frameworks/base/apex/appsearch/service
      • Processo: system_server
    • Biblioteca nativa de gelo (C++)
      • Localização do código: external/icing
      • Processo: system_server
  • Interface/Implementações HAL (C++)

    • N / D

Consulte o diagrama de arquitetura do módulo na Figura 1.

Formato do pacote

As principais funções deste módulo estão incluídas no pacote APEX com.android.appsearch .

Dependências

  • libicu
  • libprotobuf-cpp-lite
  • ndk

Costumização

Este módulo não é personalizável.