草庐IT

Android Studio : why are minSdkVersion and targetSdkVersion specified both in AndroidManifest. xml 和 build.gradle?

coder 2023-05-07 原文

我刚刚发现了一些关于 Android Studio 的奇怪之处:它在 build.gradle 文件中有一些配置选项覆盖了 AndroidManifest.xml 文件中指定的内容。

例如,我在 build.gradle 中有以下几行:

android {
    compileSdkVersion 18
    buildToolsVersion "18.1.1"

    defaultConfig {
        minSdkVersion 10
        targetSdkVersion 10
    }
...
}

它覆盖了 AndroidManifest.xml 中的相应标记:

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="8"/>

我真的不喜欢将相同的设置分布在两个不同的文件中,所以我想知道是否可以从 build.gradleAndroidManifest.xml<> 以及保留它更有意义的地方。

最佳答案

Gradle 会覆盖 list 值,我更喜欢更新 build.gradle 文件而不是 list 。可能这是使用 Gradle 的正确方法。 Gradle 支持可以通过 IDE 控制的产品风格,这些产品风格可以更改我们 list 中的许多内容,例如包名称、版本代码、版本名称、目标 SDK 等。然后在 Android Studio 中一键更改许多属性并生成另一个 apk。

您可以保留 list 原样并在 build.gradle 中进行所有配置。您可以安全地删除

<uses-sdk></uses-sdk>

来自 list 以及版本代码。

关于Android Studio : why are minSdkVersion and targetSdkVersion specified both in AndroidManifest. xml 和 build.gradle?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19997509/

有关Android Studio : why are minSdkVersion and targetSdkVersion specified both in AndroidManifest. xml 和 build.gradle?的更多相关文章

随机推荐