web-dev-qa-db-ja.com

未解決の参照:viewModelScope-Kotlin Android

基本的なviewModelにviewModelScopeを追加しようとしましたが、Androidスタジオはそれを認識しません。

私が見つけたいくつかのソリューションでgradleビルドファイルを変更しようとしましたが、何も機能しません。

ここに私のbuild.gradleアプリの抜粋

implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.2.0-alpha01"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.2.0-alpha01"
implementation "androidx.lifecycle:lifecycle-viewmodel-savedstate:1.0.0-alpha01"
kapt "androidx.lifecycle:lifecycle-compiler:2.2.0-alpha01"

私のviewModelにviewModelScopeを入力すると、Unresolved reference: viewModelScope

7
LopsemPyier

アーティファクトの最新バージョンについては、 MavenリポジトリAndroid Lifecycle ViewModel Kotlin Extensions を参照してください。

アプリレベルのbuild.gradleファイルに以下を追加します:-

def lifecycle_version = "2.2.0-rc03"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version"
kapt "androidx.lifecycle:lifecycle-compiler:$lifecycle_version"

App/build.gradleファイルの先頭にapply plugin: 'kotlin-kapt'を追加することを忘れないでください

0
Rakhi Dhavale

AndroidXライフサイクルライブラリの2つの異なるバージョンを使用しているようです。

app/build.gradle することが:

...
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.2.0-alpha01"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.2.0-alpha01"
implementation "androidx.lifecycle:lifecycle-viewmodel-savedstate:2.2.0-alpha01"
kapt "androidx.lifecycle:lifecycle-compiler:2.2.0-alpha01"
...
0
Cory Roy

同じ問題が発生し、インポートしました:"androidx.navigation:navigation-fragment-ktx:2.2.0-rc03" "androidx.lifecycle:lifecycle-livedata-ktx:2.2.0-rc03" fragment-ktxは実際には関連していないと思いましたが。それを理解するのにしばらくかかりました。それが役に立てば幸い!

0
Fernando Prieto