前言:最近接到一个任务,就是要给我们的app同时打过个版本,用于不同环境,然后发现,如果手动配置,一来麻烦,二来还容易出错(好吧,我比较粗心),所以,就查了不少资料,和实验了一把,这里就分享一下(我这里的不说是最好的,但绝对是最详细的)
因为,这个纯属操作性的东西,没多少原理可以讲,就直接上步骤吧。
1.找到你的build.gradle
2.找出里面有android这项的gradle
3.在这个android目录下添加一个新的目录:productFlavors{}顺便提一下,这个productFlavors是配置产品特性的,比如我们的appname
4.在productFlavors目录下,添加版本(或者叫产品吧)比如我下面这样
ok,看到这里,大致怎么建目录,是清楚了吧,但是呢,可能还是不明白这里面这些是什么意思?
好的,现在就里面这些东西我们来具体聊聊呗:
以第一个为例:
如果,你想问,这里面的标签什么意思,不好意思,这里不解释,这就是一种语法Groovy,想了解的,自行百度。就仿佛说java中的map<key,value>一样,用就好。
ok前三个都不说了,第4个,还需要在说一下,这个是关于清单文件的配置,所以需要说明一下,所谓一通百通嘛,这里是百度地图为例的,当然像什么微信呀,分享呀之类的,其实也是一样的。
5.配置清单文件中的百度地图key
ok,这样就可以了,是不是很简单,就是再清单配置文件中,这个原本要写死的value改为动态的获取对应value,这里,不需要多想,照着写就好(如果想知道为什么,了解xml语法和 Groovy语法)
6.使用(主要是指代码中使用)
ok,现在都配置好了,一个个讲解怎么用
首先是URL的使用,就是根地址:
在你的配置地址的地方,用BuildConfig.API_URL就可以去得到了。是不是很容易。
至于其他的,就没什么需要代码中去实现了。
现在我们说说这样配置之后怎么打包的问题
7.同时打包多版本
debug版本:
操作十分简单:
打包结果看到了吧
release版本:
打包结果:
是不是很简单。
ok,下面又有问题了
,打包是没有问题了,但是,我插着usb给手机装app,调试的时候,可怎么选呢?
ok,这个,知者不难,不知者难咯。
8.AS运行版本选择
看到了吧,AS早就为我们提供了这个方法了,看着图自己试试吧,如果你说,你那个是什么东西?what?buildVariants在哪里的呀?
看到了吧,在这里。我这人不喜欢在博客里面写什么快捷键,因为,说实话,一方面快捷键这个东西,可能不一样,容易误导,另一方面,我觉得去找也是一种练习。
ok,基本的步骤的解释,就到这里了,照着做一次,就会了。
更新了: 前面我们debug版本可以这样快捷打包,其实正式版本也是可以这样打包的,下面,介绍一种更好的打包方式:
上图是debug版本,下面介绍正式版打包:
第一步:在android目录下添加一个这样的目录,填入你的签名信息
第二步:同样在android目录下添加(注意signingConfig这个标签,这里就是配置我们的签名信息)
第三步:跟着点击
然后就有结果了(我这里做了一些其他事情,就不说了,和本文无关,所以结果会有点不一样),看结果吧:
这样,就实现了,release版本的多版本打包了。
网友评论