首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用gradle Android插件向构建变体添加特定的包后缀(或包名称)

如何使用gradle Android插件向构建变体添加特定的包后缀(或包名称)
EN

Stack Overflow用户
提问于 2014-11-25 00:52:09
回答 1查看 454关注 0票数 1

是否可以将特定的包名(applicationId)设置为构建变体?(风格+构建类型)

例如,我想将".beta“添加到一个变量的包名中,该变量可能是"flavor7Beta”,而不是其他类型的"flavor7“或其他风格的"Beta”类型。

我试过了

代码语言:javascript
复制
beta {
            ...
            applicationVariants.all { variant ->
                println "variant: ${variant.name}"
                if(variant.name == "flavor7Beta") {
                    variant.applicationId = "com.domain.myapp.beta"
                }
            }
        }

但我有

错误:(172,0)无法在com.android.build.gradle.internal.api.ApplicationVariantImpl_Decorated@3cdafe1e.上设置只读属性'applicationId‘的值

EN

回答 1

Stack Overflow用户

发布于 2014-12-07 02:22:52

你应该使用反射。

代码语言:javascript
复制
android.variantFilter { variant -> 
    def config = variant.getDefaultConfig();
    def field = config.getClass().getDeclaredField('productFlavor');
    field.setAccessible(true);
    field.get(config).applicationId "com.example"
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27109914

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档