web-dev-qa-db-ja.com

シンボルViewModelProvidersを解決できません

Android ViewModelアーキテクチャコンポーネントに取り組んでいますが、AppCompatActivityでViewModelを初期化しようとすると、上記のエラーが発生します。

import Android.Arch.lifecycle.ViewModelProviders;
ViewModelProviders.of(this).get(CounterViewModel.class);

これに関連するいくつかの質問と記事があり、それらはlifecycle:extensionsおよびlifecycle:viewmodelアプリグラドルファイルの依存関係ですが、それでもエラーが発生します。

implementation "Android.Arch.lifecycle:extensions:1.1.1"
implementation "Android.Arch.lifecycle:viewmodel:1.1.1"
annotationProcessor "Android.Arch.lifecycle:compiler:1.1.1"

パッケージAndroid.Arch.lifecycleにはクラスViewModelProvidersが含まれず、ViewModelProviderクラスのみが含まれます。

ViewModelProvidersクラスにアクセスするには、他に何を追加する必要がありますか?

編集:

App/build.gradleの依存関係:

dependencies {
    implementation project(':lifecycle')
    implementation project(':base')
    implementation "Android.Arch.lifecycle:extensions:1.1.1"
    implementation "Android.Arch.lifecycle:viewmodel:1.1.1"
    annotationProcessor "Android.Arch.lifecycle:compiler:1.1.1"
}

enter image description here

6
ashwin mahajan

両方必要ありませんlifecycle:extensionsおよびlifecycle:viewmodel build.gradleファイルで、削除

implementation "Android.Arch.lifecycle:viewmodel:1.1.1"

そして今それは大丈夫です。また、AndroidXに移行してライブラリの2.0.0バージョンを使用することもできます。

2
E-max

ライブラリで設定している場合は、implementationapiに変更できます

0
lyy