AppSearch, система индексирования и структурированного поиска на устройстве, поставлялась как APEX в Android 12. В Android 13 AppSearch поставляется как основной модуль.
Мотивация
Обеспечить единообразную реализацию AppSearch во всей экосистеме Android и поддерживать возможность обновления.
Преимущества:
- Разрешить обновление AppSearch через Play Store
- Обеспечьте соответствие требованиям AppSearch CDD.
Подробности
- Данные, собранные с помощью API AppSearch, остаются на устройстве пользователя (за исключением агрегированных данных метрик, которые используются в целях оптимизации производительности).
- Быстрая реализация хранилища, ориентированная на мобильные устройства, с низким использованием операций ввода-вывода.
- Высокоэффективная индексация и запросы к большим наборам данных.
- Многоязычная поддержка, например английский, испанский и CJKT.
- Рейтинг релевантности и оценка использования
Архитектура поиска приложений
На рис. 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 Native (C++)
- Расположение кода:
external/icing
- Процесс: system_server
- Расположение кода:
- Поверхность API AppSearch (Java)
HAL-интерфейс/реализации (C++)
- Н/Д
См. схему архитектуры модуля на рисунке 1.
Формат упаковки
Основные функции этого модуля включены в пакет APEX com.android.appsearch
.
Зависимости
- либику
- libprotobuf-cpp-lite
- ндк
Кастомизация
Этот модуль не настраивается.