我刚刚将项目从eclipse迁移到了android studio.
build.gradle有一个部分,其中包括
defaultConfig {
applicationId "com.example.someone.myapplication"
minSdkVersion 8
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
相同的是AndroidManifest.xml的uses-sdk元素
两种设置同时出现,哪些设置受到尊重?
其次,我应该从AndroidManifest.xml中删除它们吗?我的项目必须至少支持Api-8,如果uses-sdk节远离清单文件,那么它在旧平台上是否会有所不同?
解决方法:
您只需要在build.gradle文件中定义min SDK和目标SDK.当您构建时,Gradle构建系统将自动在清单中定义这些值.
如果您同时在build.gradle和AndroidManifest.xml文件中定义它们,则build.gradle文件中的设置将覆盖清单文件中的设置.
最佳做法是完全删除< uses-sdk>标签在清单中,并且仅使用build.gradle文件指定最小SDK和目标SDK.对于较旧的设备,这不会有任何区别;它将运行完全相同.
defaultConfig {
minSdkVersion 8
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
同样的情况也适用于versionCode和versionName设置.