Невозможно использовать функции Lifecycle Version 2.2.0-alpha01 - PullRequest
2 голосов
/ 22 мая 2019

Я пытаюсь интегрировать некоторые функции, представленные здесь , в мое приложение kotlin для Android. Я могу использовать штраф viewModelScope в моих моделях ViewModels, хотя это работает только тогда, когда implementation "androidx.fragment:fragment-ktx:1.1.0-alpha09" включается в мои зависимости.

Однако я совершенно не могу использовать функцию liveData, выделенную в разделе в этом . При попытке использовать liveData в моей ViewModel я получаю неразрешенную справочную ошибку.

Я пытался найти решение в этой ветке , но это не решило мою проблему.

Это соответствующий раздел моего файла build.gradle со всеми зависимостями, связанными с ViewModel и LiveData

def lifecycle_version = "2.2.0-alpha01"

// ViewModel and LiveData
implementation "androidx.lifecycle:lifecycle-runtime-ktx:$lifecycle_version"
kapt "androidx.lifecycle:lifecycle-compiler:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-viewmodel-savedstate:1.0.0-alpha01"
implementation "androidx.fragment:fragment-ktx:1.1.0-alpha09"

Стоит еще раз отметить, что я не могу использовать viewModelScope, не включая implementation "androidx.fragment:fragment-ktx:1.1.0-alpha09" в свои зависимости.

Любая помощь очень ценится, так как я немного искал, но не могу найти много, поскольку это относительно недавний выпуск. Спасибо!

1 Ответ

2 голосов
/ 22 мая 2019

Таким образом, похоже, что строка implementation "androidx.lifecycle:lifecycle-runtime-ktx:$lifecycle_version" здесь не работает, как и implementation "androidx.lifecycle:lifecycle-extensions:$lifecycle_version", и нам нужно объявить зависимости для версий kotlin ViewModel и LiveData по отдельности.Ниже приведен обновленный раздел зависимостей для ViewModel и LiveData (обратите внимание также на отсутствие зависимости фрагмента!)

// ViewModel and LiveData
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-viewmodel-savedstate:1.0.0-alpha01"
kapt "androidx.lifecycle:lifecycle-compiler:$lifecycle_version"

С учетом вышеизложенного я теперь могу использовать viewModelScope и построитель liveDataфункция, упомянутая в посте вопроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...