Ricerca app

AppSearch, un motore di ricerca strutturato e di indicizzazione sul dispositivo, è stato fornito come APEX in Android 12. In Android 13, AppSearch viene fornito come modulo Mainline.

Motivazione

Per garantire un'implementazione coerente di AppSearch nell'ecosistema Android e supportare l'aggiornabilità.

Vantaggi:

  • Consenti l'aggiornamento di AppSearch tramite il Play Store
  • Garantire la conformità ai requisiti CDD di AppSearch

Dettagli

  • I dati raccolti tramite le API AppSearch rimangono sul dispositivo dell'utente (ad eccezione dei dati delle metriche aggregate, che vengono utilizzati per l'ottimizzazione delle prestazioni).
  • Un'implementazione di archiviazione rapida e mobile-first con un basso utilizzo di I/O
  • Indicizzazione ed esecuzione di query altamente efficienti su grandi set di dati
  • Supporto multilingue, ad esempio inglese, spagnolo e CJKT
  • Classifica per pertinenza e punteggio di utilizzo

Architettura di AppSearch

La Figura 1 evidenzia i concetti di AppSearch e il limite del processo del servizio di sistema.

Architettura del modulo AppSearch

Figura 1. Architettura del modulo AppSearch

Confine del modulo

  • Apex Mainline AppSearch - com.android.appsearch

    • Superficie API AppSearch (Java)
      • Posizione del codice: frameworks/base/apex/appsearch/framework
      • Procedura: BOOT_CLASS_PATH
    • AppSearchManagerService (Java)
      • Posizione del codice: frameworks/base/apex/appsearch/service
      • Processo: system_server
    • Libreria Icing Native (C++)
      • Posizione del codice: external/icing
      • Processo: system_server
  • Interfaccia/implementazioni HAL (C++)

    • N/D

Fai riferimento al diagramma dell'architettura del modulo nella Figura 1.

Formato del pacchetto

Le funzioni principali di questo modulo sono incluse nel pacchetto APEX com.android.appsearch.

Dipendenze

  • libicu
  • libprotobuf-cpp-lite
  • ndk

Personalizzazione

Questo modulo non è personalizzabile.