当前位置: 首页 > 知识库问答 >
问题:

Androidmanifest和build中的minsdk和targetsdk。葛雷德尔:两者都有?

黄高爽
2023-03-14

我刚刚将一个项目从Exclipse迁移到Android Studio。构建。gradle文件有一个部分,包括:

defaultConfig {
    applicationId "com.example.someone.myapplication"
    minSdkVersion 8
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
}

在<code>AndroidManifest.xml</code>的<code>uses-sdk</code>元素中也存在同样的情况。

当两个设置同时存在时,哪些设置受到尊重?此外,我应该从AndroidManifest.xml中删除它们吗?我的项目必须至少支持Api-8。如果从清单文件中删除uses-sdk部分,在旧平台上会有什么不同吗?

共有1个答案

厉钊
2023-03-14

您只需要在构建中定义最小SDK和目标SDK。gradle文件。当您构建时,Gradle构建系统将在清单中自动定义这些值。

如果在< code>build.gradle和< code>AndroidManifest.xml文件中都定义了它们,则< code>build.gradle文件中的设置将覆盖清单中的设置。

最佳实践是完全删除< code >

defaultConfig {
    minSdkVersion 8
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
}

这同样适用于< code>versionCode和< code>versionName设置。

 类似资料:
  • 我刚刚发现Android studio有点奇怪:它在构建中有一些配置选项。覆盖AndroidManifest中指定内容的gradle文件。xml文件。 例如,我在中有以下几行: 这是覆盖相应的标记在: 我真的不喜欢在两个不同的文件中传播相同的设置,所以我想知道我是否可以安全地从构建中删除它。gradle或AndroidManifest。xml以及在哪里保留它更有意义。

  • 我面临着这个问题 我验证了我的系统已经安装了gradle,并且具有所有读写权限。 这个错误有什么具体原因吗? 已检查此链接

  • 问题内容: 我需要知道AngularJS是否用作前端的js框架,模板引擎是否需要单独的Handlebars?…就像我认为的那样,模板引擎功能可以使用AngularJS本身完成! 问题答案: 没错,把手和Angular在一起将毫无用处。 把手和Angular是完全不同的东西。 车把是一个模板引擎。您编写一个奇特的templatey- string,为其提供一个JSON对象,并从数据中渲染HTML。没

  • 我正在尝试让我现有的Android项目与渐变和智能J 12一起工作。以前,我曾让它与maven一起工作,但这似乎不像gradle那样灵活,而且据我所知,我需要的子文件夹更少。 我的Android项目分为干净的java库(:core)和实际的应用程序(:Android)。这两个项目都在我的主项目文件夹中。 我认为,用这个实现gradle工作的理想解决方案是将(:core)和(:android)项目视

  • 谷歌刚刚开源了它的构建工具Bazel。这个工具和Gradle有什么不同?它能做什么是Gradle做不到的,它做什么更好,Gradle做什么更好?