多渠道打包,相信很同学都知道。在Android Studio中只要经过配置,就能打出对应市场的渠道包,便于统计各个应用市场的下载及使用用户的情况。这里不得不介绍下友盟统计,多渠道打包基本上很多都会用到友盟统计。
最传统的方式,使用productFlavors来打包多渠道
-
首先集成友盟统计SDK
在Gradle中集成如下:
-
dependencies { compile 'com.umeng.analytics:analytics:latest.integration' }
2.在AndroidManifest.xml的application节点下meta-data中配置如下:
<meta-data android:name="UMENG_APPKEY" android:value="您在友盟平台申请的AppKey"/> <meta-data android:name="UMENG_CHANNEL" android:value="${UMENG_CHANNEL_VALUE}"/>
3.配置一些Gradle语言以及多渠道ID:
只写关键代码
productFlavors { baidu {} huawei {} xiaomi {} ....//其他渠道 } productFlavors.all { flavor -> flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name] }
4.签名打包
配置好签名信息,按照步骤来
缺点是打包速度特别慢,渠道一多,可能会花好几分钟,甚至更长
美团walle
https://github.com/Meituan-Dianping/walle
-
配置build.gradle
在位于项目的根目录 build.gradle 文件中添加Walle Gradle插件的依赖, 如下:
buildscript { dependencies { classpath 'com.meituan.android.walle:plugin:1.1.5' } }
并在当前App的 build.gradle文件中apply这个插件,并添加上用于读取渠道号的AAR
apply plugin: 'walle' dependencies { compile 'com.meituan.android.walle:library:1.1.5'}
2.配置插件
walle { // 指定渠道包的输出路径 apkOutputFolder = new File("${project.buildDir}/outputs/channels"); // 定制渠道包的APK的文件名称 apkFileNameFormat = '${appName}-${packageName}-${channel}-${buildType}-v${versionName}-${versionCode}-${buildTime}.apk'; // 渠道配置文件 channelFile = new File("${project.getProjectDir()}/channel") }
点击assembleReleaseChannels,打的包会在build文件夹下outputs/channels/文件夹下
1分钟打100个渠道包完全没问题
借用第三个软件 360加固助手、乐固等
比如你的应用要上传到应用宝或者360应用市场上,会提示你要加固应用,然后给你推荐加固软件,这类软件不仅可以加固应用而且能够签名和多渠道打包,值得一提的是要是仅仅加固应用,你的应用的渠道会丢失以及还需要重新签名。
packer-ng-plugin
下一代Android打包工具,100个渠道包只需要10秒钟。使用方式可以查看
https://github.com/mcxiaoke/packer-ng-plugin
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。