ProcessLifecycleOwner не работает после обновления совместимости приложений до версии 1.4.1 ⇐ Android
ProcessLifecycleOwner не работает после обновления совместимости приложений до версии 1.4.1
Я исследую странную проблему: мы изменили androidx.appcompat:appcompat с 1.3.1 на 1.4.1 и внезапно наш жизненный цикл процесса наблюдения LifecycleObservers перестал генерировать какие-либо события.
Я также использую "androidx.lifecycle:lifecycle-extensions:2.2.0", я знаю, что это уже устарело, но оно работает безупречно, если appcompat равен 1.3.1 Я указал правильное имя приложения в манифесте и включил этого поставщика, как того требует документация.
Пример инициализации, которая не работает. Этот объект внедряется в класс Application, и добавляется наблюдатель жизненного цикла, но onStart и onStop никогда не вызываются.
класс AppLifecycle @Inject конструктор( частный вал переднего планаПрокси: AppLifecycleProxy ) : LifecycleObserver { в этом { ProcessLifecycleOwner.get().lifecycle.addObserver(это) } @OnLifecycleEvent(Lifecycle.Event.ON_START) веселье onStart() { передний планProxy.onStarted() } @OnLifecycleEvent(Lifecycle.Event.ON_STOP) веселье onStop() { передний планProxy.onStopped() } } РЕДАКТИРОВАТЬ: Согласно комментарию @EpicPandaForce, изменение блока поставщика в манифесте на:
А замена зависимости "androidx.lifecycle:lifecycle-extensions:2.2.0" на "androidx.lifecycle:lifecycle-common:2.4.1" исправила эта проблема
Я исследую странную проблему: мы изменили androidx.appcompat:appcompat с 1.3.1 на 1.4.1 и внезапно наш жизненный цикл процесса наблюдения LifecycleObservers перестал генерировать какие-либо события.
Я также использую "androidx.lifecycle:lifecycle-extensions:2.2.0", я знаю, что это уже устарело, но оно работает безупречно, если appcompat равен 1.3.1 Я указал правильное имя приложения в манифесте и включил этого поставщика, как того требует документация.
Пример инициализации, которая не работает. Этот объект внедряется в класс Application, и добавляется наблюдатель жизненного цикла, но onStart и onStop никогда не вызываются.
класс AppLifecycle @Inject конструктор( частный вал переднего планаПрокси: AppLifecycleProxy ) : LifecycleObserver { в этом { ProcessLifecycleOwner.get().lifecycle.addObserver(это) } @OnLifecycleEvent(Lifecycle.Event.ON_START) веселье onStart() { передний планProxy.onStarted() } @OnLifecycleEvent(Lifecycle.Event.ON_STOP) веселье onStop() { передний планProxy.onStopped() } } РЕДАКТИРОВАТЬ: Согласно комментарию @EpicPandaForce, изменение блока поставщика в манифесте на:
А замена зависимости "androidx.lifecycle:lifecycle-extensions:2.2.0" на "androidx.lifecycle:lifecycle-common:2.4.1" исправила эта проблема
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение