Android的多渠道打包

==

本篇包括以下内容:

  1. 多渠道打包概述

  2. 友盟的多渠道打包

  3. 美团的多渠道打包

  4. 360的多渠道打包

多渠道打包概述

=======

什么是多渠道包

渠道包就是要在安装包中添加渠道信息,也就是channel,对应不同的渠道,例如:小米市场、360市场、应用宝市场等

产品在不同的应用市场可能有不同的统计需求,需要为每个应用市场的Android包设定一个可以区分应用市场的标识,这个为Android包设定应用市场标识的过程就是多渠道打包。

为什么要提供多渠道包

国内存在着有众多的应用市场,产品在不同的渠道可能有不同的统计需求,为此Android开发人员需要为每个应用市场发布一个安装包,这里就引出了Android的多渠道打包。

在安装包中添加不同的标识,应用在请求网络的时候携带渠道信息,方便后台做运营统计。

实现多渠道打包的原理

通过配置gradle脚本实现多渠道打包

这种打包方式是使用Android Studio的编译工具gradle配合使用的,其核心原理就是通过脚本修改AndroidManifest.xml中的mate-date内容,执行N次打包签名操作实现多渠道打包的需求。然后就可以在java中通过API获取对应的数据。

如何实现

现在android渠道多种多样,其实渠道不仅仅局限于应用市场,一种推广方式也可以看做一个渠道,比如:通过人拉人的方式去推广,官网上推广,百度推广等。所以说渠道成千上万,为了推广,有时候一次也会打成千的安装包,那你半天或者一天啥都别干了,所以介绍几个大公司高效的打包方式,借鉴一下。

友盟的多渠道打包

========

友盟就提供了多渠道打包的方式,可用于渠道统计等。

现在Android的构建工具换成了gradle,通过gradle,简单配置后就可以实现自动打所有渠道包。

补充知识

了解下BuildTypes、Flavors、BuildVariants三个定义:

1、BuildTypes : 构建类型,AndroidStudio的Gradle组件默认提供给了“debug”“release”两个配置。

2、Flavors : 产品渠道,可以根据productFlavors,针对不同的渠道配置个性化apk

3、BuildVariants:每一个buildtype和flavor组成一个buildvariant

友盟打包实现步骤

  1. 按照umeng的要求,manifest文件中需要有(在application下,和activity是并列关系):

<meta-data

android:name=“UMENG_CHANNEL”

android:value=“${UMENG_CHANNEL_VALUE}”/>

这段配置,value那里就是wandoujia,360之类的渠道名称,但是我们在这里不会去写渠道名,写的是一个占位符,后面gradle编译的时候会动态的替换掉它。

  1. 在module(一般也就是app)的build.gradle的android{}中添加如下内容:

//productFlavors是android节点的一个自节点。你需要打什么渠道的包,就在这里按umeng的要求用渠道名给UMENG

  • 27
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值