【发布时间】:2017-11-14 07:12:10
【问题描述】:
我想将minSdk 增加到21 只为androidTest。这是否可能在不引入产品风味的情况下实现?
注意:使用 Android Gradle Plugin 3.0,我的应用的 minSdk 需要为16。
【问题讨论】:
-
希望您尝试了我的解决方案,它有效吗?如果您能/想回来提供一些反馈,非常感谢您
标签: android android-gradle-plugin
我想将minSdk 增加到21 只为androidTest。这是否可能在不引入产品风味的情况下实现?
注意:使用 Android Gradle Plugin 3.0,我的应用的 minSdk 需要为16。
【问题讨论】:
标签: android android-gradle-plugin
你可以试试这个post 建议在你运行测试的文件夹中创建一个新的 Manifest 添加属性
使用-sdk
还表示在 gradle 文件中使用一些 if 语句在 gradle 中播放,但它们很难看。无论如何,您可以将其用作 B 计划解决方案:
if (gradle.startParameter.taskNames.contains(":app:assembleDebug")) {
minSdkVersion 21
}else{
minSdkVersion 14
}
【讨论】:
您可以在项目的 gradle 文件或清单中添加 minSdk。添加 minSdk 时,意味着您指定了您设计和测试应用程序的最低 sdk 级别。您还想添加 targetSdk。您可能感兴趣的谷歌支持链接https://developer.android.com/training/basics/supporting-devices/platforms.html
在清单中它看起来像
<manifest xmlns:android="http://schemas.android.com/apk/res/android" ... >
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="21" />
...
</manifest>
在你的 gradle 文件中
defaultConfig {
applicationId "com.project.projectName"
minSdkVersion 14
targetSdkVersion 21
}
【讨论】:
minSdk 必须是 16。我想为androidTest 进行多重索引,所以我需要minSdk = 21 - 但仅限于`androidTest
androidTest)。