Android高阶之Android studio-友盟多渠道打包方式
2016-12-27 18:23
447 查看
转自:http://blog.csdn.net/chenliguan/article/details/51066933
Android Studio多渠道打包
Android Studio系列教程六–Gradle多渠道打包
2
3
1
2
3
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
1
2
0 概述
写Android应用的人类每次发布App都需要面对数十个市场,而为了能够采集到市场的表现数据,就必须为每一个市场生成相应的apk包,也就是俗称的渠道包。1 参考链接
android studio-友盟多渠道打包方式Android Studio多渠道打包
Android Studio系列教程六–Gradle多渠道打包
2 配置方法
第一步 在AndroidManifest.xml里配置PlaceHolder
<meta-data android:name="UMENG_CHANNEL" android:value="${UMENG_CHANNEL_VALUE}" />1
2
3
1
2
3
第二步 在模块的build.gradle文件的defaultConfig里加上PlaceHolder定义
android { ... defaultConfig { ... manifestPlaceholders = [ UMENG_CHANNEL_VALUE:"default_channel" ] } }1
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8
第三步 在模块的build.gradle文件里添加ProductFlavors配置
android { ... defaultConfig { ... manifestPlaceholders = [ UMENG_CHANNEL_VALUE:"default_channel" ] } productFlavors { default_channel{} wandoujia{} _360{} yingyongbao{} xiaomi{} baidu{} huawei{} jifeng{} } productFlavors.all { flavor -> flavor.manifestPlaceholders = [ UMENG_CHANNEL_VALUE:name ] } }1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
第四步 在模块的build.gradle文件里对生成的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 = "caixiangji_${variant.productFlavors[0].name}.apk" } else { // fileName = "app_v${defaultConfig.versionName}_${packageTime()}_beta.apk" fileName = "caixiangji_${variant.productFlavors[0].name}_beta.apk" } output.outputFile = new File(outputDirectory, fileName) } } }1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
第五步 一次生成所有渠道包
5.1 命令行导出apk
//在Android studio下的Terminal输入 gradlew assembleWandoujiaRelease1
2
1
2
5.2 签名导出apk
3 查看导出的apk
打开AndroidStudio的Gradle tasks面板相关文章推荐
- 【Android 进阶】友盟的多渠道打包方式
- 安卓学习笔记---Android 开发技巧-以友盟为例在Android Studio利用gradle进行多渠道打包和apk签名发布
- Android多渠道打包汇总(五)—— 友盟的多渠道打包方式
- Android 开发技巧-以友盟为例在Android Studio利用gradle进行多渠道打包和apk签名发布
- android studio-友盟多渠道打包方式
- Android Studio多渠道打包方式一:通过外部文件来写渠道信息
- Android之Android Studio--Gradle多渠道打包
- Android几种常见的多渠道(批量)打包方式介绍
- Android多渠道打包(二):友盟多渠道打包
- Android Studio 友盟多渠道打包
- Android Studio多渠道打包方式二:通过在gradle文件来写渠道信息
- Android开发工具之Android Studio--如何打包sdk通过arr包的方式
- android 中三种多渠道打包方式
- android studio 使用友盟多渠道打包
- 【转】Android 多渠道打包:使用Gradle和Android Studio
- Android Studio多渠道打包(以友盟为例)
- 使用Android studio Gradle 实现友盟多渠道打包
- Android几种常见的多渠道(批量)打包方式介绍
- Android常用多渠道打包方式实践
- Android Studio Gradle实践之多渠道自动化打包(Android快速多渠道打包)