本文先回顾了以往流行的多渠道打包方式,随后引入的mcxiaoke的packer-ng-plugin项目,介绍该项目在实际应用(配合友盟统计)中如何解决更方便的Android多渠道打包问题 多渠道打包方案解析 实际应用集成 多渠道打包方案解析 android应用市场多种多样,应用宝.小米市场.豌豆荚...为了监督每个市场我们的应用下载和推广情况,对发布在每个市场上的apk打上烙印是必须的一步,这就是多渠道apk的问题,"渠道"就是给apk打上的烙印. 同时友盟统计可以帮我们统计渠道数据(…
android 多渠道打包 原理 在manifest文件中,application标签内部设置不同的metadata标签即可,可以通过java api获取这个matedata内的值 友盟提供的多渠道打包技术 按照umeng的要求,在manifest文件中添加如下代码 <meta-data android:name="UMENG_CHANNEL" android:value="你自己申请的key" /> 如果在value的地方写死了一个值,会使得每次打包只…
Android多渠道打包--Gradle打包 前言 由于App一般都会在多个应用市场上架,为了分析App在每个不同渠道的具体的数据,一般都会对不同渠道打包不同的App.多渠道打包有多种方式,这里只介绍利用Gradle进行多渠道打包. 步骤 1.在AndroidManifest.xml中增加配置 <meta-data android:name="APP_CHANNEL" android:value="${APP_CHANNEL_VALUE}" /> 其中,…
每次中午吃饭总会和技术同学聊天.当做 iOS 开发的做安卓开发的人员在一起的时候,他们中间又多了一个话题:iOS 开发难还是安卓开发难. 这个时候做安卓开发的同学最激动说安卓开发要自己画界面.机型复杂.操作系统多 rom 又被各家改的四不像....开发一个安卓 APP 的时间将近是开发 iOS 所需时间的 2 倍.iOS 开发的同学可能就会反驳说 iOS 开发入门难度比安卓高,开发中第三方库不像安卓那么多,开发设备又必须是 MAC,而安卓随便一台 PC 即可...笔者认为,这个问题因人而异,不想…
http://www.cnblogs.com/huangtianhui/archive/2012/07/14/2591382.html 鉴于Android市场众多,基于各种利益考虑,以及未来app能够更有针对性的投放市场,肯定是要监测每个渠道的数据的. 如果通过eclipse每次修改下渠道名,然后再导出包,如果有十多个渠道要分发,那就得打十多个包,这无疑是很费力的,程序员的精力不应该过多的耗费在这些琐碎重复的事情上.这些琐碎重复的事情能用机器来做最好就让机器来做. 我是一个比较懒的人,不乐意做琐…
http://www.orchidshell.com/ 兰贝壳儿:一个Eclipse插件,为Android开发提供了多渠道打包功能和一些工具类.…
具体工具参见:https://github.com/hpu-spring87/MultiSignTools…
因为项目中存在多种环境,既要区分bebug与release版本,release又要区分测试环境与生产上线环境,每次打包都得浪费不少的等待时间:并且哪个版本有问题还得去切换环境一个个打包,关键是还得牢记每次切换环境需要修改的内容,尽管每次都检查仔细,但总有可能疏忽的时候,一旦有问题既浪费自己的时间又浪费测试人员的时间:因此不得不去研究一键切换环打包的功能 一.区别debug与release 首先在build.gradle中配置签名信息,为debug配置差异属性 android { defaultC…
项目需要,简单2步实现(由于简单,所以对大量渠道打包不是最优的),比如1000个渠道同时打包的话可能花费的时间会过长.不过目前该方法能满足绝大需求了...根据截图一步一步走: 第一步 设置配置清单文件: 此处的value的内容即为我们要区别的渠道号,比如一个包设置为360,一个包设置为baidu,一个包设置为tengxun等,所以此处我们定义为一个变量${UMENG_CHANNEL_VALUE},其中UMENG_CHANNEL_VALUE这个自己定义,跟接下来的名称一样就行. 第二步 设置Mod…
在android4.0以后的sdk里那个脚本就失效了,主要是因为 apkbuilder这个程序不见了: 人家sdk升级,我们的脚本也要跟上趟,修改一下喽. 上网一查,大家的文章还停留在我去年的脚本程度,算了,自己动手查阅了资料之后,具体实现如下: 先输一下生成key的命令 keytool -genkey -alias android.keystore -keyalg RSA -validity 20000 -keystore android.keystore 输入keystore密码:再次输入新…
一 定义包名 如下图,在AndroidManifest.xml中的package就是包名 二 创建keystore 选择Build->Generate Signed APK 选择create new 填写key Store信息,一定要记住下面的2个密码.当你需要再次用这个keyStore文件打包时,就需要密码. 我们这里选择V1 V1和V2的区别: http://blog.csdn.net/lvshuchangyin/article/details/62227286 打包完成后,可以看到目录下多…
Gradle 实现 Android 多渠道定制化打包 版权声明:本文为博主原创文章,未经博主允许不得转载. 最近在项目中遇到需要实现 Apk 多渠道.定制化打包, Google .百度查找了一些资料,成功实现了上述功能,在此记录以备不时之需,温故而知新,可以为师矣~ 需求可以总结如下:  如何实现多个 Apk 安装在同一设备 在之前的印象中,同一个应用在同一设备上只能安装一个,除非手动修改 AndroidManifest.xml 文件中的包名( package ),但这么做的后果就是新的应用真…
项目地址 https://github.com/mcxiaoke/gradle-packer-plugin 项目介绍 gradle-packer-plugin 是Android多渠道打包工具Gradle插件,可方便的于自动化构建系统集成,通过很少的配置可实现如下功能 : 支持自动替换AndroidManifest文件中的meta-data字段实现多渠道打包 支持自定义多渠道打包输出的存放目录和最终APK文件名 支持自动修改versionName中的build版本号,实现版本号自动增长 gradl…
作者:郭孝星 微博:郭孝星的新浪微博 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell 因为国内Android市场渠道众多,为了统计每一个渠道的下载以及数据统计,须要我们针对每一个渠道进行单独打包,而Gradle能够帮助我们完毕自己主动多渠道打包. 一多渠道打包流程 (1) 在AndroidManifest.xml中配置PlaceHolder <meta-dat…
一.什么的是打包? 打包就是根据签名和其他标识生成安装包. 二.什么是签名? 1.在android应用文件(apk)中保存的一个特别字符串 2.用来标识不同的应用开发者:开发者A,开发者B 3.一个应用开发者开发的多款应用使用同一个签名> 就好比是一个人写文章,签名就相当于作者的署名.> 如果两个应用都是一个开发者开发的,那么签名就是一样的.> 这个开发者,可以是个人,也可以是公司.团体. 三.为什么要用签名 原因1:最简单直接的回答:系统要求的 Android系统要求每一个Androi…
欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 作者:李涛 ApkChannelPackage是一种快速多渠道打包工具,同时支持基于V1签名和V2签名进行多渠道打包.插件本身会自动检测Apk使用的签名方法,并选择合适的多渠道打包方式,对使用者来说完全透明. 概述 众所周知,因为国内Android应用分发市场的现状,我们在发布APP时,一般需要生成多个渠道包,上传到不同的应用市场.这些渠道包需要包含不同的渠道信息,在APP和后台交互或者数据上报时,会带上各…
关于作者: 李涛,腾讯Android工程师,14年加入腾讯SNG增值产品部,期间主要负责手Q动漫.企鹅电竞等项目的功能开发和技术优化.业务时间喜欢折腾新技术,写一些技术文章,个人技术博客:www.ltlovezh.com . ApkChannelPackage是一种快速多渠道打包工具,同时支持基于V1和V2签名进行渠道打包.插件本身会自动检测Apk使用的签名方法,并选择合适的多渠道打包方式,对使用者来说完全透明. Github地址: https://github.com/ltlovezh/Apk…
转自https://www.jianshu.com/p/572b59829a08 为什么要打多个渠道的包? 大家都知道,android应用商店大大小小有几百个,作为一个有志向的app,就需要做到统计各个应用商店的下载量,不同渠道下的app使用时长.安装数量.使用用户数等等信息,这个时候就需要打多个渠道包.渠道包的原理大致就是往apk中写入不同的渠道信息,对这个问题有疑问的同学可以看看gradle官网或者看看这篇文章. 传统多渠道打包 用android studio开发的同学都知道,传统的多渠道打…
最新项目中要求在友盟后台看到不同渠道的统计,Android大大小小的应用市场要几百个,要一个一个手工打包那一天也干不完,还好是有大牛的,弄出了好多解决方法,就Gradle做一下记录和分享,首先看一些理论知识: 1.应用的打包签名 什么是打包? 打包就是根据签名和其他标识生成安装包. 签名是什么? 1.在android应用文件(apk)中保存的一个特别字符串 2.用来标识不同的应用开发者:开发者A,开发者B 3.一个应用开发者开发的多款应用使用同一个签名 就好比是一个人写文章,签名就相当于作者的署…
文章大纲 一.多渠道打包与数据统计介绍二.友盟实现多渠道打包实战三.友盟数据统计实战四.项目源码下载五.参考文章   一.多渠道打包与数据统计介绍   多渠道打包,相信很多同学都知道.在Android Studio中只要经过配置,就能打出对应市场的渠道包.打过包的同学可能都会有这样的感受:散热器疯狂地转.打包速度那叫一个慢.这时候除了无奈,还是无奈.  app上线后,一般公司都希望跟踪app在市场上的使用情况.包括新增用户.活跃用户.渠道信息.错误信息等,还有例如商城类的app,需要跟踪用户最喜…
看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我们开发的环境分为:debug 和 release,但是你想再分内测1环境.内测2环境等等怎么办呢? 这就需要依赖强大的gradle 来配置了. 相关的配置也可以参考谷歌官方文档. 配置构建类型 buildTypes 您可以在模块级 build.gradle 文件的 android {} 代码块内部创…
原文链接:http://stormzhang.com/devtools/2015/01/15/android-studio-tutorial6/ 由于国内Android市场众多渠道,为了统计每个渠道的下载及其它数据统计,就需要我们针对每个渠道单独打包,如果让你打几十个市场的包岂不烦死了,不过有了Gradle,这再也不是事了. 友盟多渠道打包 废话不多说,以友盟统计为例,在AndroidManifest.xml里面会有这么一段: <meta-data android:name="UMENG_…
一般用渠道的统计无非是用友盟或者其它之类的,今天就以友盟的为例吧. 渠道信息一般在 AndroidManifest.xml中修改以下值: <meta-data android:name="UMENG_CHANNEL" android:value="wandoujia" /> 首先你必须在AndroidManifest.xml中的meta-data修改以下的样子: <meta-data android:name="UMENG_CHANNEL…
转自:http://www.stormzhang.com/devtools/2015/01/15/android-studio-tutorial6/ Android Studio系列教程六--Gradle多渠道打包 2015 年 01 月 15 日 devtools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处! 由于国内Android市场众多渠道,为了统计每个渠道的下载及其它数据统计,就需要我们针对每个渠道单独打包,如果让你打几十个市场的包岂不烦死了,不过有了Gradle,这再也不是事…
[Android Studio] Android studio 多渠道打包(超简洁版) 转载:http://xuyazhou.com/archives/461 http://relex.me/using-manifestplaceholders/ 最近一直用android studio 进行开发,在开发和发版的时候,遇到一个多渠道打包的问题,由于公司里是有七个渠道的包进行分发,由于每次去AndroidManifest.xml修改渠道的值,甚是麻烦... 最后去google了一番,发现有些方法,是…
Android Studio系列教程六--Gradle多渠道打包 2015 年 01 月 15 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处!http://stormzhang.com/devtools/2015/01/15/android-studio-tutorial6/ 由于国内Android市场众多渠道,为了统计每个渠道的下载及其它数据统计,就需要我们针对每个渠道单独打包,如果让你打几十个市场的包岂不烦死了,不过有了Gradle,这再也不是事了. 友盟多渠道…
前言: 关于Android渠道打包是一个比较老的话题,今天主要记录总结一下多渠道打包以及如果动态配置修改一些资源属性.今天以公司实际需求为例进行演示,由于项目复用很多公共的业务组件,而且业务组件之间的跳转采用Scheme协议,每个业务组件的host地址不变,所以需要在打包的时候动态修改scheme协议名字.为了方便举例,首先我们这里假设我们一个App要打出两个不同的渠道,方便进行数据统计. 第一步声明一个渠道参数 AndroidManifest.xml中 <meta-data android:n…
一.前言 Hi,大家好,我是承香墨影! 当我们需要发布一款 App 到应用市场的时候,一般需要我们针对不同的市场生产不同的渠道包,它们使用的是同一套代码,只是会包含一些各自的渠道信息,用于我们做数据分析. 前几天,企鹅电竞团队开源了自己的 Android Apk 多渠道打包工具:VasDolly,比美团的 Walle 更全面一些. 正好借这个机会,来讲解一下 Android 的不同版本的签名机制的差异. 二.Android 的签名 2.1 应用签名 通过对 Apk 进行签名,开发者可以证明对 A…
Android Studio下实现多渠道打包 直接上步骤 步骤 1. 清单文件添加属性(以友盟统计为例) 在application标签下添加meta-data属性 <application -- > <activity -- > -- </activity> <meta-data android:name="UMENG_CHANNEL" android:value="${UMENG_CHANNEL_VALUE}" />…
Eclipse用起来虽然方便,但是编译打包android项目还是比较慢,尤其将应用打包发布到各个渠道时,用Eclipse手动打包各种渠道包就有点不切实际了,这时候我们用到Ant帮我们自动编译打包了. 在eclipse中引入ant请参考  http://www.cnblogs.com/tt_mc/p/3891546.html ,下面是本人ant打包时遇到的一些问题. ---------------------可爱的分割线------------------------------ 一.按照上面步骤…