asc*_*sco 5 android gradle jacoco android-gradle-plugin
我的build.gradle中有以下productFlavors:
productFlavors {
free {
}
paid {
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我添加了一个flavorDimension(http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Multi-flavor-variants),如下所示:
flavorDimensions "payment", "releasetype"
productFlavors {
paid {
dimension "payment"
}
free {
dimension "payment"
}
beta {
dimension "releasetype"
}
major {
dimension "releasetype"
}
}
Run Code Online (Sandbox Code Playgroud)
我正在使用此脚本为jacoco覆盖率报告生成gradle任务。该脚本将构建类型(调试,发布)与产品风格(付费,免费,...)结合在一起,并相应地生成任务。
当然,这是由于风味尺寸而造成的,因为脚本未将它们考虑在内。
该脚本生成任务:
testDebugPaidUnitTestCoverage
testDebugFreeUnitTestCoverage
testDebugBetaUnitTestCoverage
testDebugMajorUnitTestCoverage
Run Code Online (Sandbox Code Playgroud)
它应该做的是:
testDebugPaidBetaUnitTestCoverage
testDebugPaidMajorUnitTestCoverage
...
Run Code Online (Sandbox Code Playgroud)
我试图通过gradle任务访问flavorDimensions
android.flavorDimensions
Run Code Online (Sandbox Code Playgroud)
但无法识别该属性:
Error:Could not get unknown property 'flavorDimensions' for object of type com.android.build.gradle.LibraryExtension.
Run Code Online (Sandbox Code Playgroud)
关于如何扩展此脚本以使其与风味尺寸一起使用或如何从外部jacoco.gradle脚本访问它们的任何建议?
我可以从那里访问构建类型和产品口味,所以应该可以吗?
小智 0
我不太擅长使用 gradle。
但也许你可以尝试以下方法
如果你的模块是库;
variants = android.libraryVariants.collect { var ->
var.name
}
Run Code Online (Sandbox Code Playgroud)
如果您的模块是应用程序;
variants = android.applicationVariants.collect { var ->
var.name
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
449 次 |
| 最近记录: |