下面介绍的是在eclipse中使用gradle进行多渠道打包(添加签名+混淆)
1,首先新建一个android测试项目,结构如下图所示:
2,选中右键选择expert->生成gradle文件,如下图所示:
3,刷新项目(F5)多了bulid文件和gradle文件夹(如果刷新后并没有出现gradle文件夹,可以手动创建新项目按以上步骤添加一般就会出现,复制到需要打包的项目根目录下即可),如下图所示:
4,打开gradle-wrapper.properties,如下图所示:
去官网下载对应的gradle-1.6-bin.zip,如果不知道怎么在官网下载,可以直接谷歌百度,一般会有.
5,配置gradle环境变量
下载的gradle-1.6-bin.zip解压路径
GRADLE_HOME :
添加到path:
6,测试环境是否配置成功(cmd 输入gradle -v):
7,打开build.gradle准备配置打包
我们要配置的是多渠道,签名,和混淆.
8,配置签名和混淆(在android节点内添加):
signingConfigs {
myConfig {
myConfig {
//填写你的keystore路径和密码们(配置签名)
storeFile file("D:\\xxx\\xxx\\xxx.keystore")
storePassword "xxx"
keyAlias "xxx"
keyPassword "xxx"
}
}
buildTypes {
release {
storeFile file("D:\\xxx\\xxx\\xxx.keystore")
storePassword "xxx"
keyAlias "xxx"
keyPassword "xxx"
}
}
buildTypes {
release {
//添加签名
signingConfig signingConfigs.myConfig
signingConfig signingConfigs.myConfig
//执行混淆
runProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'
}
}
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'
}
}
9,配置多渠道(同样在build文件的android节点中添加):
productFlavors {
baidu {
manifestPlaceholders = [ CHANNEL_NAME:" Baidu"]
}
xiaomi {
manifestPlaceholders = [ CHANNEL_NAME:" Xiaomi" ]
}
wandoujia {
manifestPlaceholders = [ CHANNEL_NAME:" Wandoujia" ]
}
yingyongbao {
manifestPlaceholders = [ CHANNEL_NAME:" yingyongbao" ]
}
huawei {
manifestPlaceholders = [ CHANNEL_NAME:" huawei" ]
}
}
baidu {
manifestPlaceholders = [ CHANNEL_NAME:" Baidu"]
}
xiaomi {
manifestPlaceholders = [ CHANNEL_NAME:" Xiaomi" ]
}
wandoujia {
manifestPlaceholders = [ CHANNEL_NAME:" Wandoujia" ]
}
yingyongbao {
manifestPlaceholders = [ CHANNEL_NAME:" yingyongbao" ]
}
huawei {
manifestPlaceholders = [ CHANNEL_NAME:" huawei" ]
}
}
红色文字就是打包写入的渠道名;CHANNEL_NAME是需要在你项目清单文件
中配置的相对应:
如果是友盟多渠道,则需要在AndroidManifest.xml中的application节点里添加如下配置:
<meta-data
android:name="UMENG_CHANNEL"
android:value="${CHANNEL_NAME}" />
android:name="UMENG_CHANNEL"
android:value="${CHANNEL_NAME}" />
${CHANNEL_NAME}在打包的时候就会被之前配置在build的渠道名替换
10,开始正式打包
在控制台中,进入项目所在的目录,执行gradle clean
然后执行gradle build
release.apk就是我们需要的多渠道包.