这是一个Android项目。我试图在assets文件夹下排除资源文件。我试过了
" aaptOptions {ignoreAssetsPattern" file.json"}"
但它排除了所有构建变体的文件。
我尝试了以下操作,但仍然无效。
android.variantFilter {variant - > if(variant.buildType.name.equals(' release')){ variant.mergeAssets.doLast { 删除(fileTree(dir:' assets / filedir',包括:[' file.json'])) } }}
请帮忙。非常感谢。
答案 0 :(得分:0)
您可以通过查询BuildConfig对象来检查您是否处于release
或debug
模式。通过执行此操作,您可以设置条件验证并排除要为特定BuildConfig模式删除的文件:
if (BuildConfig.RELEASE)
{
// do something, exclude your file
}
或者,您可以比较BUILD_TYPE
并以相同的方式使用它:
if(BuildConfig.BUILD_TYPE.equals("release"))
{
// do something, exclude your file
}
在相关任务中实现这一点,你很高兴。另外,this和this答案解释了如何很好地实现您想要做的事情。
顺便说一句,你可以将aaptOptions
包装在这样的发布闭包中:
release {
aaptOptions {
ignoreAssetsPattern 'file.json' // Your file pattern
}
}