androidx.lifecycle.DefaultLifecycleObserver по умолчанию не найден

#android #kotlin #androidx

#Android #kotlin #androidx

Вопрос:

У меня возникла проблема, когда моя сборка не может найти один из классов androidx, в частности:

 androidx.lifecycle.DefaultLifecycleObserver
  

Вот мои настройки gradle:

 annotationProcessor "androidx.lifecycle:lifecycle-compiler:2.0.0"
implementation "androidx.lifecycle:lifecycle-runtime:2.0.0"
implementation "androidx.lifecycle:lifecycle-extensions:2.0.0"
  

У меня нет никаких других проблем с получением классов androidx, только этот.

Я пытался аннулировать кеши в Android Studio и перезапустить, но безуспешно. Также выполняется очистка сборки, а также синхронизация gradle.

Я проверил здесь:

https://developer.android.com/jetpack/androidx/migrate

Отображение этого класса из библиотеки поддержки в androidx:

android.arch.lifecycle.DefaultLifecycleObserver по умолчанию -> androidx.lifecycle.DefaultLifecycleObserver по умолчанию

Есть идеи о том, почему это происходит?

Ответ №1:

Я думаю, это потому, что вам не хватает одной зависимости:

 implementation "androidx.lifecycle:lifecycle-common-java8:$lifecycle_version"
  

Получить последнюю версию lifecycle-common-java8 здесь

Смотрите документацию:

Если вы используете язык Java 8, то наблюдайте за событиями с DefaultLifecycleObserver. Чтобы включить его, вы должны добавить «androidx.lifecycle:lifecycle-common-java8:» в ваш файл build.gradle.

Комментарии:

1. ДА! Большое вам спасибо.