您现在的位置是:主页 > news > 江苏10大网站建设公司/关键词查询工具软件
江苏10大网站建设公司/关键词查询工具软件
admin2025/6/6 9:31:38【news】
简介江苏10大网站建设公司,关键词查询工具软件,哪里有做时时彩网站搭建的,济南微网站Android多渠道打包 多渠道打包概念 发布到不同渠道上的apk,标记不同的渠道,目的是为了统计该渠道的下载量、留存率等等数据,可以有针对性的分析数据. 渠道统计的核心 为apk打标记,也就是各种渠道的标识;运行apk的时候取出标记;上传标记给自己的服务器进…
Android多渠道打包
多渠道打包概念
- 发布到不同渠道上的apk,标记不同的渠道,目的是为了统计该渠道的下载量、留存率等等数据,可以有针对性的分析数据.
渠道统计的核心
为apk打标记,也就是各种渠道的标识;
运行apk的时候取出标记;
上传标记给自己的服务器进行统计数据.
友盟渠道统计的实现
打标记:在清单文件中的meta-data结点下配置渠道;
<meta-data
android:name="UMENG_CHANNEL"
android:value="官网" />运行apk的时候,友盟的api,会取出meta-data的渠道信息;
上传渠道标记到友盟自己的服务器,用户就可以通过友盟的后台查看具体的渠道统计了.
多渠道打包的方式
- 一个一个分别导出;
- ant:要求比较高,需要懂得如何编写ant脚本,但是编写好之后,执行一个命令就可以;
- 友盟的打包工具;
- Gradle 多渠道打包;
- 美团技术团队的多渠道打包,使用比较简单;
- 新一代Android渠道打包工具.
如何选择
- 如果只是修改
渠道名
可以考虑用umeng打包工具
或者gradle多渠道打包
,其实绝大数公司情况属于此种情况; 打包过程需要
定制化的配置
,可以考虑用ant或者gradle定制打包,可以参考http://tech.meituan.com/mt-apk-adaptation.html
,说明的情况.a.自定义包名
b.自定义签名
第一种:umeng打包工具下载地址
https://github.com/umeng/umeng-muti-channel-build-tool
第二种:gradle多渠道打包
1. 在AndroidManifest.xml中定义占位符
<meta-dataandroid:name="UMENG_CHANNEL"android:value="${UMENG_CHANNEL_VALUE}"/>
2. 在module的gradle脚本中替换占位符
productFlavors {wangdoujia {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "wangdoujia"]}xiaomi {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "xiaomi"]}anzhi {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "anzhi"]}
}
第三种:快速打包(1分钟打900个渠道包,不是梦)
参考网址:
http://www.open-open.com/lib/view/open1418262988402.html
http://tech.meituan.com/mt-apk-packaging.html 美团自动化之旅
准备
下载python: https://www.python.org
下载别人写好的脚本: https://github.com/GavinCT/AndroidMultiChannelBuildTool
步骤
- 安装Python
..PythonTool\info\channel.txt
,里面去添加自己想要的渠道- 放置apk到
MultiChannelBuildTool.py
所在目录 - 双击
MultiChannelBuildTool.py
执行脚本,完成多渠道打包; - 拷贝
ChannelUtil.java
到项目中 - 代码设置渠道
AnalyticsConfig.setChannel(ChannelUtil.getChannel(this));
第四种:新一代Android渠道打包工具:1000个渠道包只需要5秒
- 参考:http://www.open-open.com/lib/view/open1453684213136.html
步骤
1.修改项目【根目录】的 build.gradle
buildscript {
......
dependencies{// add packer-ngclasspath 'com.mcxiaoke.gradle:packer-ng:1.0.4'
}
}
2.修改【app下】的 build.gradle,有以下两行代码需要添加
apply plugin: 'packer' dependencies {// add packer-helpercompile 'com.mcxiaoke.gradle:packer-helper:1.0.4'
}
注意: packer-ng 和 packer-helper 的版本号需要保持一致
3.Java代码中获取当前渠道,建议是在应用程序启动的时候,在自定义的Application类中的onCreate()方法中去获取当前渠道,例如下面
public class XiaoKeApplication extends Application {@Overridepublic void onCreate() {//程序的入口方法....// 如果没有使用PackerNg打包添加渠道,默认返回的是""// com.mcxiaoke.packer.helper.PackerNgfinal String market = PackerNg.getMarket(this);// 或者使用 PackerNg.getMarket(Context,defaultValue)// 之后就可以使用了,比如友盟可以这样设置AnalyticsConfig.setChannel(market);....}
}
4.添加打包的签名,可以通过图形界面添加
signingConfigs {//addconfig {keyAlias 'xiaoke'keyPassword 'xiaoke'storeFile file('C:/xiaoke.jks')storePassword 'xiaoke'}}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'//addsigningConfig signingConfigs.config}
}
5.创建markets.txt放到【根目录】
Google_Play#play store marketGradle_Test#testSomeMarket#some marketHelloWorld
6.通过命令进行打包
gradle -Pmarket=markets.txt clean apkRelease
7.致辞,完成多渠道打包的概念。打包完成后你可以在 ${项目根目录}/build/archives/ 目录找到最终的渠道包。