Этот вопрос проверяет знание ключевых блоков, из которых строится любое Android-приложение, и их ролей.
Android-приложение состоит из APK-контейнера, содержащего код (DEX-файлы), ресурсы, манифест и нативную библиотеку. Основные компоненты внутри — Activity (экран), Service (фоновые задачи), BroadcastReceiver (приём широковещательных Intent) и ContentProvider (доступ к данным). Они объявляются в AndroidManifest.xml и взаимодействуют через Intent.
Структура APK:
DEX-файлы: скомпилированный байткод.
Ресурсы: XML, изображения, строки.
AndroidManifest.xml: описывает компоненты и разрешения.
Libs: нативные библиотеки (.so).
Основные компоненты:
Activity: отвечает за UI и пользовательское взаимодействие.
Service: выполняет длительные задачи без UI.
BroadcastReceiver: получает системные или пользовательские события.
ContentProvider: предоставляет и защищает доступ к данным.
Роли компонентов:
Activity управляет окнами и навигацией.
Service работает в фоне (плеер, загрузка).
Receiver реагирует на события (сеть, заряд).
Provider даёт общий API к данным (контакты, БД).