Ответ
Файл AndroidManifest.xml считывается системой в нескольких ключевых моментах:
-
Установка приложения – система парсит манифест для получения базовой информации (permissions, components, package name и т.д.)
-
Запуск компонентов – перед стартом Activity, Service, BroadcastReceiver или ContentProvider система проверяет их объявление в манифесте.
Пример проверки Activity в коде:
val intent = Intent(this, SomeActivity::class.java)
if (intent.resolveActivity(packageManager) != null) {
startActivity(intent)
}
- Системные события – например, при получении broadcast'а система сверяется с манифестом на предмет зарегистрированных ресиверов.
Важно: манифест читается не полностью при старте приложения, а выборочно по мере необходимости для оптимизации производительности.