AndroidStudio Gradle基于友盟的多渠道打包方法

AndroidStudio由于使用了gradle的进行项目构建,使我们开发app方便很多,今天我就给大家列出几点是用gradle的方便之处。

一、AndroidStudio Gradle第三依赖统一管理
二、AndroidStudio Gradle基于友盟的多渠道打包
三、AndroidStudio安全管理签名文件keystroe和签名密码

好久没写博客了,今天写一篇关于多渠道打包的文章。
首先我们要下载友盟的jar包,然后照着文档配置即可。(这里就不过多讲解了,直接看我的代码)
文档地址:http://dev.umeng.com/analytics/android-doc/integration?spm=0.0.0.0.Szgw63

这是我的MainActivity

public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 场景类型设置接口,设置为普通统计场景类型 MobclickAgent.setScenarioType(this, EScenarioType.E_UM_NORMAL); String appkey = ""; String channal = ""; try { appkey = PackageManagerUitls.getMateDataValue(this, "UMENG_APPKEY"); channal = PackageManagerUitls.getMateDataValue(this, "UMENG_CHANNEL"); } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } MobclickAgent.UMAnalyticsConfig config = new MobclickAgent.UMAnalyticsConfig(this, appkey, channal); MobclickAgent.startWithConfigure(config); } public void onResume() { super.onResume(); MobclickAgent.onResume(this); } public void onPause() { super.onPause(); MobclickAgent.onPause(this); } }

这里写了一个工具类,获取清单文件的meta-data节点对应的值

/** * 作者:lcw 16-9-8 * 博客:http://blog.csdn.net/lsyz0021/ */ public class PackageManagerUitls { /** * 获取 AndroidManifest中application节点下meta-data节点的值 * * @param context * @param key * @return * @throws PackageManager.NameNotFoundException */ public static String getMateDataValue(Context context, String key) throws PackageManager.NameNotFoundException { ApplicationInfo appInfo = context.getPackageManager().getApplicationInfo(context.getPackageName(), PackageManager.GET_META_DATA); String msg = appInfo.metaData.getString(key); return msg; } }

这是清单文件的配置

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.hfax.umeng"> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <meta-data android:name="UMENG_APPKEY" android:value="57d11e6467e58e9051000d7e" /> <meta-data android:name="UMENG_CHANNEL" android:value="${UMENG_CHANNEL_VALUE}" /> <meta-data android:name="BASE_URL" android:value="${BASE_URL}" /> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>

下面是核心的gredle配置
这里是测环境的配置(可以不配置,不影响多渠道)

渠道配置

打包生成apk

安装测试
首先测试安装包到友盟官网的渠道列表中可以看了。

时间: 2024-09-15 09:12:44

AndroidStudio Gradle基于友盟的多渠道打包方法的相关文章

AndroidStudio Gradle第三依赖统一管理的实现方法

AndroidStudio由于使用了gradle的进行项目构建,使我们开发app方便很多,今天我就给大家列出几点是用gradle的方便之处. 一.AndroidStudio Gradle第三依赖统一管理 二.AndroidStudio Gradle基于友盟的多渠道打包 三.AndroidStudio安全管理签名文件keystroe和签名密码 这三篇文章很好的讲解了gradle的在打包和项目依赖管理的优点,大家可以参考一下,来提高自己的开发效率,增强签名文件的安全性. 在很多时候我们使用Andro

Android Studio多渠道打包套路

说到多渠道,这里不得不提一下友盟统计,友盟统计是大家日常开发中常用的渠道统计工具,而我们的打包方法就是基于友盟统计实施的.按照友盟官方文档说明,渠道信息通常需要在AndroidManifest.xml中配置如下值: <meta-data android:value="Channel ID" android:name="UMENG_CHANNEL"/> 上面的value值Channel_ID就是渠道标识.我们的期望的就是在编译时候这个值能够自动变化以满足区

Android笔记之:App自动化之使用Ant编译项目多渠道打包的使用详解_Android

随着工程越来越复杂,项目越来越多,以及平台的迁移(我最近就迁了2回),还有各大市场的发布,自动化编译android项目的需求越来越强烈,后面如果考虑做持续集成的话,会更加强烈.    经过不断的尝试,在ubuntu环境下,以花界为例,我将一步一步演示如何使用命令行,使用ant编译android项目,打包多渠道APK.    要点:    (1). 编译android的命令使用    (2). ant基本应用    (3). 多项目如何编译(包含android library)    (4). 如

Android Studio使用教程(六):Gradle多渠道打包_Android

由于国内Android市场众多渠道,为了统计每个渠道的下载及其它数据统计,就需要我们针对每个渠道单独打包,如果让你打几十个市场的包岂不烦死了,不过有了Gradle,这再也不是事了. 友盟多渠道打包 废话不多说,以友盟统计为例,在AndroidManifest.xml里面会有这么一段: 复制代码 代码如下: <meta-data     android:name="UMENG_CHANNEL"     android:value="Channel_ID" /&g

Android Studio系列教程六--Gradle多渠道打包

转:  http://www.stormzhang.com/devtools/2015/01/15/android-studio-tutorial6/     由于国内Android市场众多渠道,为了统计每个渠道的下载及其它数据统计,就需要我们针对每个渠道单独打包,如果让你打几十个市场的包岂不烦死了,不过有了Gradle,这再也不是事了. 友盟多渠道打包 废话不多说,以友盟统计为例,在AndroidManifest.xml里面会有这么一段: <meta-data android:name="

androidstudio-AndroidStudio多渠道打包

问题描述 AndroidStudio多渠道打包 今天公司要把APP上线一些渠道,本来想用多渠道打包的,在网上跟着做了下,然后报错. 网上方法貌似都不能用了啊.都是一年前的方法,找不到最新的. 使用后报找不到productFlavors()这个错,查了下好像是这个方法过时了?但是没有见解决办法啊. 这是我Moudle的gradle的所有配置.请教大神指导下啊. 解决方案 友盟多渠道打包 在AndroidManifest.xml里面会有这么一段: <meta-data android:name=&quo

studio多渠道打包

由于国内Android市场众多渠道,为了统计每个渠道的下载及其它数据统计,就需要我们针对每个渠道单独打包,如果让你打几十个市场的包岂不烦死了,不过有了Gradle,这事就简单了. 友盟多渠道打包 废话不多说,以友盟统计为例,在AndroidManifest.xml里面会有这么一段: [html] view plaincopyprint? <meta-data       android:name="UMENG_CHANNEL"       android:value="

使用友盟进行apk的自动更新

一.下载SDK: 官网链接:http://www.umeng.com/component_update 打开链接后,界面如下: 上图中,点开箭头处所示的位置,下载Android对应的版本:   上图中,单击红框部分下载SDK.    二.在友盟的后台注册应用: 上图中,单击红框部分,创建新的应用. 上图中,应用创建成功后,会生成AppKey,这就是我们后面要用到的.   二.在代码中进行配置: 现在开始看官方文档怎么说的,文档链接如下:http://dev.umeng.com/auto-upda

【友盟+】COO叶谦:解读全域大数据战略背后的技术演进

今年年初,Oracle发布了一份大数据变化趋势报告,报告中指出,越来越多的企业将用户分析甚至是企业应用同大数据加以结合.从AI支持型应用到Megabox等数据流客户端,各家企业都将迎来自己的大数据转型及下一代数据驱动型应用.Oracle亚太客户体验策略及转型部门总监Krisi Mansfield也表示:"预见并了解了客户的意向,并相应地采取行动之后,就可实现个人化(Individualization)"目前,国内一批大数据企业都开始致力于此项技术的研究和探索--即围绕用户的使用过程来打