1:在values资源文件夹下新建一个stringfile.xml文件
里面只包含设置应用name的string
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="label_name">应用名</string> </resources>
2:在build文件中配置多渠道包
在其中可配置相应的server环境
配置应用名主要是:
manifestPlaceholders = [label:"@string/label_name"]
可在builTypes中配置,也可在productFlavors中使用
buildTypes { release { manifestPlaceholders = [label:"@string/label_name"] } }
productFlavors { dev_env { manifestPlaceholders = [label:"@string/label_name"] flavorDimensions "app" applicationId "com.baoming.com" buildConfigField("String", "SERVERBASEURL", "\"https://www.baidu.com/\"") }
}
3:配置manifest文件
在applicationId标签下配置应用名
<application android:label="${label}"> ... </application>
4:jenkins中参数化构建工程(具体的jenkins配置在这里不讲述了)
4.1General中配置APP_NAME
在general中选择This project is parameterized
点击添加参数,选择String Parameter,然后配置名称为APP_NAME,默认值可为空,描述为配置应用名。
4.2 构建
点击构建,在Windows上选择Execute Windows batch command
然后使用sed修改本地文件中的内容
注意:如果Windows上找不到sed,可以安装git。然后在电脑上配置环境变量。
位置:C:\Program Files\Git\usr\bin
然后使用sed命令修改应用名:
注:此处的应用名为stringfile.xml中默认的应用名,一定要与此处对应上。
%APP_NAME%是获取jenkins配置的应用名的具体值。在Windows中使用%..%来获取,在shell脚本中使用${...}来获取
然后是stringfile.xml的路径,为jenkins本地工作空间路径下的stringfile.xml
具体命令:sed -i 's/应用名/'%APP_NAME%'/g' D:\jenkins\workspace\工程名\app\src\main\res\values\stringfile.xml
4.3 配置完成,开始打包
完成以上步骤后,使用jenkins开始构建工程,然后会出现配置应用名的配置项,然后根据不同渠道,配置上自己想要的应用名,点击开始构建,打出来的APK应用名就是自己配置的应用名咯。