Androidx Activity API 属于哪个依赖项?

问题描述 投票:0回答:2

文档展示了如何为 Androidx Activity API 添加依赖项。那里提到要声明

androidx.activity:activity-ktx:$activity_version
。在我的项目中,我声明的 Androidx 依赖项只有
appcompat
core
lifecycle
constraintlayout
recyclerview
。但在我的项目中我仍然可以使用
androidx.activity.result.contracts.ActivityResultContracts
。这怎么可能?

编辑:我注释掉了所有第 3 方依赖项,现在,我的整个依赖项部分如下:

dependencies {
    implementation(fileTree(mapOf("include" to listOf("*.jar"), "dir" to "libs")))

    testImplementation("junit:junit:4.13.2")
    androidTestImplementation("androidx.test:runner:1.4.0")
    androidTestImplementation("androidx.test.espresso:espresso-core:3.4.0")

    // Materials design
    implementation("com.google.android.material:material:1.4.0")

    implementation("androidx.appcompat:appcompat:1.3.1")
    implementation("androidx.core:core-ktx:1.6.0")

    implementation("androidx.recyclerview:recyclerview:1.2.1")
    implementation("androidx.constraintlayout:constraintlayout:2.1.0")

    val lifecycleVersion = "2.4.0-alpha03"
    implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycleVersion")
    implementation("androidx.lifecycle:lifecycle-runtime-ktx:$lifecycleVersion")
}

我仍然可以在我的项目中导入 any

androidx.*
库。

android androidx build-dependencies
2个回答
1
投票

androidx.appcompat:appcompat:1.3.1
取决于
androidx.activity:activity:1.2.4

所以你的

implementation("androidx.appcompat:appcompat:1.3.1")
线通过传递依赖拉入
androidx.activity:activity:1.2.4


0
投票

我还发现了

com.google.android.material
进口
androidx.activity

在更新使用 api 33 编译的项目的依赖项时,这一点变得非常明显

Dependency 'androidx.activity:activity:1.8.0-alpha06' requires libraries
and applications that depend on it to compile against version 34 or later
of the Android APIs.

:app is currently compiled against android-33.
© www.soinside.com 2019 - 2024. All rights reserved.