我有一个多模块 android 项目,其中有一些 android-library 模块。 其中一些 android-library 模块包括 androidTest (即库组件的集成测试)。
我可以轻松地为库模块定义 minSdk,但无法定义 targetSdk(旧版 AGP 可以实现,但已弃用)。
问题是生成的用于运行集成测试(针对库)的 androidTest.apk 将 targetSdk 设置为库的 minSdk。当测试 apk 部署到设备时:GooglePlayProtect 会阻止 apk 的安装,因为它针对的是旧版本的 Android(在我的例子中,minSdk 是 26)。 (可以忽略警告并安装测试 apk,但需要人为操作来消除警告:在 CI 上执行测试时这是一个问题)。
所以我的问题是:有没有办法将生成的 androidTest.apk 的 targetSdk 显式设置为与 minSdk 不同的值?
targetSdk 可以在 testOptions 块中设置:
android {
testOptions {
targetSdk = 34
}
}