есть ли какие-то альтернативные способы организовать передачу зависимостей в следующем случае:
сейчас есть
ApplicationScope -> Service Scope
ApplicationScope -> ActivityScope
нужно сделать
ApplicationScope -> ServiceScope
ServiceScope -> ActivityScope
сейчас есть мыслишка сначала стартовать сервис в onCreate(Bundle) активити, а потом биндить его для получения сервисного компонента через IBinder интерфейс, но есть опасения, что сервис может стартовать с задержкой и мы будем получать краш на некоторых версиях Android 🤔
p.s. сервис foreground и живет дольше активити
p.p.s. проблема в том, что зависимость сейчас лежит в ApplicationScope, а хотелось бы сократить время жизни до ServiceScope
p.p.p.s. задержка запуска сервиса может возникать из-за
этой проблемы - сейчас используется
ActivityManager.RunningAppProcessInfo
для отложенного запуска сервиса, если процесс не переместился в
IMPORTANCE_FOREGROUND
состояние