AppSearch, система индексации и структурированного поиска на устройстве, была представлена как APEX в Android 12. В Android 13 AppSearch представлен как основной модуль.
Мотивация
Обеспечить единообразную реализацию AppSearch в экосистеме Android и поддержку возможности обновления.
Преимущества:
- Разрешить обновление AppSearch через Play Store
- Обеспечить соответствие требованиям AppSearch CDD
Подробности
- Данные, собранные через API AppSearch, остаются на устройстве пользователя (за исключением агрегированных данных показателей, которые используются для оптимизации производительности).
- Быстрая реализация хранилища, ориентированная в первую очередь на мобильные устройства, с низким использованием ввода-вывода
- Высокоэффективное индексирование и выполнение запросов к большим наборам данных
- Поддержка нескольких языков, таких как английский, испанский и CJKT
- Рейтинг релевантности и оценка использования
Архитектура AppSearch
На рисунке 1 показаны концепции AppSearch, а также границы процесса системной службы.
Рисунок 1. Архитектура модуля AppSearch
Граница модуля
AppSearch Mainline Apex -
com.android.appsearch
- Поверхность API AppSearch (Java)
- Расположение кода:
frameworks/base/apex/appsearch/framework
- Процесс: BOOT_CLASS_PATH
- Расположение кода:
- AppSearchManagerService (Java)
- Расположение кода:
frameworks/base/apex/appsearch/service
- Процесс: system_server
- Расположение кода:
- Собственная библиотека Icing (C++)
- Расположение кода:
external/icing
- Процесс: system_server
- Расположение кода:
- Поверхность API AppSearch (Java)
Интерфейс/реализации HAL (C++)
- Н/Д
См. схему архитектуры модуля на рисунке 1.
Формат упаковки
Основные функции этого модуля включены в пакет APEX com.android.appsearch
.
Зависимости
- либику
- libprotobuf-cpp-lite
- ндк
Настройка
Этот модуль не настраивается.