首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将构建机器签名添加到gradle生成的变量

将构建机器签名添加到gradle生成的变量
EN

Stack Overflow用户
提问于 2016-02-08 18:08:32
回答 1查看 93关注 0票数 1

我想标记一些从gradle生成的变量(在我的例子中,它是后来与HTTP请求一起使用的用户代理),以便以后能够区分哪个开发人员构建了应用程序(例如,如果某个开发人员犯了错误,他的应用程序是DDoSing服务器)。

所以现在我可以用以下方法来区分releasedebug

代码语言:javascript
复制
buildTypes {
    debug {
        buildConfigField "String", "USER_AGENT", "\"Android-debug\""
    }
    release {
        buildConfigField "String", "USER_AGENT", "\"Android-release\""
    }
}

但是对于debug,我想添加一些东西来知道是谁创建了应用程序实例,它可能是git登录名、机器名或其他东西。

EN

回答 1

Stack Overflow用户

发布于 2016-02-09 09:40:58

gradle构建文件实际上是Groovy代码,您可以自由地在其中放置任何您想要的内容。您只需确保代码在描述构建的DSL中使用之前运行即可。因此,如果您想从系统中获取一些东西,只需编写Groovy代码就可以了。Groovy很像Java,而且您可以在运行时使用完整的JDK,因此入门应该很容易。

如果您想要访问有关构建机器和环境的内容,则可能需要使用不同的命令来收集数据。用这些数据填充一些变量。然后像以前一样使用buildConfigField将这些值放到BuildConfig.java中。

请记住,您可能希望在debug和release中都提供一些值,以便它们都生成相同的BuildConfig符号。否则,您的应用程序可能无法在一个或另一个配置中编译。

顺便说一句。您可以使用已经添加到BuildConfig中的属性来区分debug和release之间的区别,因此您不需要添加更多的东西来区分区别。这样的代码行将始终出现(请查看生成的BuildConfig.java以亲自查看):

代码语言:javascript
复制
public static final boolean DEBUG = Boolean.parseBoolean("true");
public static final String BUILD_TYPE = "debug";
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35266935

复制
相关文章

相似问题

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