Я пытаюсь использовать новую функцию viewModelScope()
, предоставляемую новой библиотекой Android KTX.
В файле Gradle я добавил:
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.0.0'
implementation 'androidx.core:core-ktx:1.0.2'
Но когда я связался с viewModelScope()
, я получил ошибку Unresolved reference: viewModelScope
:
class MainViewModel(application: Application): AndroidViewModel(application) {
fun fetchData(){
viewModelScope.launch{
}
}
}
Я не понимаю, в чем проблема. Любая идея? Спасибо.
2 ответа
Ознакомьтесь с примечаниями к выпуску https://developer.android.com/jetpack/androidx/releases / Жизненный цикл # declaring_dependencies
viewModelScope
доступен из v2.1.x
Так что вам нужно добавить свою версию в файл Gradle.
Я использую в своем проекте 2.1.0-beta01 :
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.1.0-beta01"
Это меньше версии, чем выпущено на официальном сайте .
Однако я использую его, потому что новая версия 2.2.0-alpha01 все еще имеет ошибку Unresolved reference: viewModelScope - Android KTX
.
Новые вопросы
android
Android - это мобильная операционная система Google, используемая для программирования или разработки цифровых устройств (смартфоны, планшеты, автомобили, телевизоры, одежда, стекло, IoT). Для тем, связанных с Android, используйте специальные теги Android, такие как android-intent, android-activity, android-адаптер и т. Д. Для вопросов, не связанных с разработкой или программированием, но связанных с платформой Android, используйте эту ссылку: https: // android.stackexchange.com .