androidx.appcompat.app.AppCompatActivity 没有实现 LifecycleOwner

androidx.appcompat.app.AppCompatActivity doesn't implement LifecycleOwner

我知道看起来像是一些愚蠢的错误,但我找不到它。 在我的项目中,我可以从我的片段访问 LifecycleOwner 但不能从 Activity.

这是我的 build.gradle

implementation project(':domain')
implementation project(':data')
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.1.1'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.1.1'
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.core:core-ktx:1.1.0-alpha05'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'

// Koin for Android
implementation "org.koin:koin-android:$koin_version"
implementation "org.koin:koin-androidx-viewmodel:$koin_version"

// Anko
implementation "org.jetbrains.anko:anko-commons:$anko_version"
implementation "org.jetbrains.anko:anko-sdk15-listeners:$anko_version"

//Architecture components
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation "androidx.lifecycle:lifecycle-extensions:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"

这是 Activity 代码:

这是AppCompatActivity的源代码

根据 this issue,如果您使用 core-ktx:1.1.0appcompat:1.0.2,混合 alpha 版本和稳定版本,这是一个已知问题。升级到 appcompat:1.1.0-alpha03 以解决问题:

implementation 'androidx.appcompat:appcompat:1.1.0-alpha03'

这是你的核心图书馆。生产代码的一般经验法则,尽量避免使用 alpha。更新以下库,你应该没问题。

implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.0.1'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.0.1'