Можно ли создать приложение без Activity

«Можно ли создать приложение без Activity» — вопрос из категории Android компоненты, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Да, можно. В Android приложение может работать без Activity, используя Service или BroadcastReceiver в качестве точки входа.

Пример с Service:

class MyService : Service() {
    override fun onBind(intent: Intent?): IBinder? = null

    override fun onCreate() {
        super.onCreate()
        // Логика сервиса
    }
}

В AndroidManifest.xml укажите сервис как точку входа:

<application ...>
    <service android:name=".MyService">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </service>
</application>

Ограничения:

  • Нет UI (если не использовать WindowManager).
  • Может быть ограничено системой (например, в Android 8+ для фоновых сервисов).

Подходит для задач без интерфейса (например, бэкграунд-обработка).