美文网首页
Gradle--多环境编译打包

Gradle--多环境编译打包

作者: 我爱飘柔 | 来源:发表于2017-07-11 17:47 被阅读116次

    需求背景

    前段时间产品经理提了个需求,测试环境,预发布环境,生产环境编译下的app需要在同一步手机同时存在,实现是可以的,但是得有三个环境下的不同applicationId,百度地图key,域名,桌面logo,刚开始是想需要什么环境就换什么类型,很麻烦,每次都要换一次重新编译,我就在想有什么便捷的方法一键设置更换,gradle其中的Flavors功能可以实现我想要的。

    开发思路

    这个是主项目中build.gradle中的配置,有三个环境我命名为 xiaoming_test,xiaoming_ready,xiaoming_product,并有不同的applicationId,BAIDU_MAP_KEY,HTTP_HEAD,HTTP_HEAD_JAVA,app_icon,(解释一下,有两条域名是因为后面后台是用java开发而做的区分),到这里应该大家有疑问,举个栗子,我们一般开发的第三方key是在mainifests进行注册申请的,而我们gradle如何去引用资源的。这里有两种引用方式,直接引用,自定义引用。

    直接引用

    引用logo在application的icon属性命名为app_icon,$表示引用这个命名,对应的是gradle的配置。

    自定义引用

    在mainifests自定义为HTTP_HEAD,value值通过${HTTP_HEAD}引用,getHttpHead()获取自定义注册的域名值。从而实现每次请求对应的域名,只需在gradle里设置。

    如何快速切换环境

    只需打开studio的BuildVariarts设置,选择需要的环境即可重新编译不同的apk,方便快捷的做到一键设置快速打包。

    相关文章

      网友评论

          本文标题:Gradle--多环境编译打包

          本文链接:https://www.haomeiwen.com/subject/holoettx.html