1

之后,使用无效缓存重新启动 Android Studio,并清理 + 重建构建,我仍然无法从库中导入ViewModel类。Koin甚至强制手动import org.koin.android.viewmodel.ext.android.viewModel导入。

在此处输入图像描述

应用程序/构建.gradle

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])

    implementation 'com.android.support:appcompat-v7:28.0.0'

    implementation "org.koin:koin-android:1.0.2"
    implementation 'org.koin:koin-android-viewmodel:1.0.2'
    ...
}

有同样问题的人吗?

4

4 回答 4

3

您的活动必须扩展 AppCompatActivity 而不是 Activity。

如果您想将 koin 与活动、片段或服务一起使用,您的类必须实现 KoinComponent。

于 2019-01-14T13:00:39.897 回答
1

我遇到了同样的问题(当 Activity 扩展 AppCompatActivity 时也是如此),但就我而言,解决方案是使用稳定版本的 core-ktx:

// Stable version - Works fine with koin and koin's viewModel
implementation "androidx.core:core-ktx:1.0.1"

// Alpha version - When in use viewModel is not found
implementation 'androidx.core:core-ktx:1.1.0-alpha03'
于 2019-01-16T04:46:16.143 回答
1

我需要使用 AppCompatActivity 而不是 Activity

于 2019-01-14T12:58:04.640 回答
0

viewmodels 方法不需要 Koin 库依赖项。您只需要确保您有这些依赖项:

 implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.0"
    implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.0"
    implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
    kapt "androidx.lifecycle:lifecycle-compiler:2.2.0"
    implementation "androidx.activity:activity-ktx:1.1.0"

请按照此 android studio 指南了解更多信息:https ://androideveryday.com/2020/03/07/android-studio-guide-to-viewmodel-livedata-2020-edition/

于 2021-03-21T17:58:23.627 回答