TGViewer
Android Broadcast Android Broadcast @android_broadcast · 14.5K subscribers
Post #9847 7.45K
Android Broadcast 🤖 Посмотрел на обновлённую статистику распространения версий Android на 1 декабря 2025 и вот что интересно. 📈 Android 16 набирает обороты быстрее предшественников За два месяца после релиза Android 16 (API 36) уже захватил 7,5% рынка. Для сравнения, Android…
Android 9 (API 28) сегодня — это более 95% всех активных Android‑устройств в мире. Повышение minSdkVersion до этого уровня открывает доступ к новым платформенным API, среди которых особенно интересен AppComponentFactory.

AppComponentFactory позволяет задать фабрику, которая будет управлять созданием экземпляров Application, Activity, Service, ContentProvider и BroadcastReceiver. Благодаря этому можно использовать конструкторы с параметрами для этих компонентов и отказаться от полевого инжекта (field injection) или других обходных путей, вызванных ограничениями старых версий Android.


// Создаем свою фабрику
class MyAppComponentFactory : AppComponentFactory() {

override fun instantiateActivity(
cl: ClassLoader,
className: String,
intent: Intent
): Activity {
return when (className) {
MainActivity::class.java.name ->
MainActivity("Hello from factory")
else ->
super.instantiateActivity(cl, className, intent)
}
}
}
``

<!-- Указываем фабрику в манифесте -->
<application
android:name=".MyApplication"
android:appComponentFactory=".MyAppComponentFactory"
... >
...
</application>

// Используем в Activity конструктор с параметром
class MainActivity(private val message: String) : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
println("Message from factory: $message")
}
}


#Android #AndroidDev #Android9
  • ❤ 74
  • 👍 16
  • 👎 14
  • 🤔 4
  • 🔥 2
More from @android_broadcast
  1. Sep 27, 2026🤖 Android Dev Summit возвращается! Конференция от Google про Android для разработчиков сн…
  2. Sep 25, 2026🚀 Вышел WorkManager 2.12.0 👉 Новое экспериментальное Work Metrics API для изучения истор…
  3. Sep 25, 2026🚀 Вышел androidx.navigation3 1.2.0. И этот как раз допил того, что надо в реальных кейсах…
  4. Sep 25, 2026🚀 Google готовит библиотеку AndroidX Backup Test (пока только первая альфа) для тестирова…
  5. Sep 24, 2026Android Broadcast pinned a photo
  6. Sep 24, 2026🐘 Вышел Gradle 9.8.0 Что нового 👉 Поддержка Java 27 👉 Улучшили отображение ошибок в лог…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →