您的位置:首页 > 移动开发 > Android开发

Android Studio 多渠道打包

2017-02-28 16:50 302 查看
转载请标明出处:http://blog.csdn.net/donkor_/article/details/58587893

前言

初登友盟官网,“【友盟+】全球领先的第三方全域大数据服务提供商。”这句话就醒目地显示在眼前。可以明确的知道,友盟在移动端app开发,确实具备了很大的影响力。而国内Android市场众多渠道,为了统计每个渠道的下载及其它数据统计,如果一个一个去打包,那实在是麻烦。但如果这时候使用友盟,那简直是再简单不过了。通过本文,学习在Android Studio中以友盟为例进行多渠道打包。

▲ 基本使用

首先,在AndroidManifest.xml里配置PlaceHolder

<meta-data
android:name="UMENG_CHANNEL"
android:value="${UMENG_CHANNEL_VALUE}" />


value填的主要是360,应用宝之类的渠道名称,最好不要写中文!在这里先不用着急写渠道名,写一个占位符,后面gradle编译的时候会动态的替换掉它。

在app的build文件的defaultConfig里加上PlaceHolder定义

android {
...

defaultConfig {
...
manifestPlaceholders = [ UMENG_CHANNEL_VALUE:"default_channel" ]
}
}


设置productFlavors

productFlavors {
default_channel{}
wandoujia{}
_360{}
yingyongbao{}
xiaomi{}
baidu{}
huawei{}
jifeng{}
}

productFlavors.all { flavor ->
flavor.manifestPlaceholders = [ UMENG_CHANNEL_VALUE:name ]
}


设置自动生成apk命名

android.applicationVariants.all { variant ->
variant.outputs.each { output ->
def outputFile = output.outputFile
if (outputFile != null && outputFile.name.endsWith('.apk')) {
File outputDirectory = new File(outputFile.parent);
def fileName
if (variant.buildType.name == "release") {
//                    fileName = "app_v${defaultConfig.versionName}_${packageTime()}_${variant.productFlavors[0].name}.apk"
fileName = "donkor_${variant.productFlavors[0].name}.apk"
} else {
//                    fileName = "app_v${defaultConfig.versionName}_${packageTime()}_beta.apk"
fileName = "donkor_${variant.productFlavors[0].name}_beta.apk"
}
output.outputFile = new File(outputDirectory, fileName)
}
}
}


在android studio底栏中有个命令行工具Terminal,直接输入命令“gradlew assembleRelease”导Release包。在app–>build–>outputs–>apk路径中就可以看到打包成功后的APK。成功效果图如下



其他的打包命令还包括:

gradlew assemble:打所有渠道包

gradlew assembleDebug:只打Debug包

gradlew assemble_360:只打360的渠道包

gradlew assemble_360Release:只打360的release渠道包

注意,此时这里的APK还是未签名的。我们需要配置gradle让APP自动签名,如果还有不会配置的话,可以参考我的另外一篇文章Android Studio生成签名文件,自动签名,以及获取SHA1和MD5值 。然后再次在Terminal执行gradlew assembleRelease命令,此时生成的就是有签名的渠道包



配置文件与jks下载地址:http://download.csdn.net/detail/donkor_/9766524

结尾:

希望这篇文章有帮助到您。欢迎关注我的微信公众号,扫一扫下方二维码,即可关注。有什么问题也可以直接留言,看到之后我会及时回复您。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: