android开发系列之友盟统计集成
相比大家都遇到这种情况,当我们的app上线之后,我们想要实时的跟踪了解到app里面的bug情况、新增用户情况、用户相关的行为属性情况等。但是如果自己在app里面去开发集成这些功能,一方面开发工作量还挺大(包括前后端),另一方面统计信息也有可能非常不准确、不全面。那么有没有其他厂商去帮我们做这些事情呢?这个时候友盟就该闪亮登场了。
今天我们主要看看在android app里面想要集成友盟的话,我们需要做哪些步骤呢?首先我们可以进到友盟的android文档中心,参考文档去集成,我们总结为以下几步:1.通过邮箱(最好为公司邮箱)申请友盟账号,然后通过刚刚申请的友盟账号,登录进到管控台,在里面添加一个app,这个时候我们就能够得到一个appKey。
2.如果我们的开发环境是ADT,那么就需要到友盟的官网上面下载SDK,里面有统计要用到的jar包;如果我们的开发环境是android studio,那么我们还可以通过gradle里面的maven功能,直接添加如下依赖引用,代码如下:
dependencies {
compile 'com.umeng.analytics:analytics:latest.integration'
}
3.当我们将友盟jar包正确引用之后,就需要添加一下权限了,代码如下:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
4.这个时候我们还需要在AndroidMenifest.xml文件里面,配置当前app的appkey和渠道号了,代码如下:
<meta-data android:value="YOUR_APP_KEY" android:name="UMENG_APPKEY"></meta-data>
<meta-data android:value="Channel ID" android:name="UMENG_CHANNEL"/>
5.这个时候我们就可以开始设置我们需要用到的统计类型了,其中session统计需要在每个activity的onResume、onPause方法里面调用如下代码:
public void onResume() {
super.onResume();
MobclickAgent.onResume(this);
}
public void onPause() {
super.onPause();
MobclickAgent.onPause(this);
}
只有当我们调用了MobclickAgent.onResume()和MobclickAgent.onPause()方法,才能够保证获取正确的新增用户、活跃用户、启动次数、使用时长等基本数据。
6.至此我们的app集成友盟的工作就大至完成了,如果你还想配置其他更多的统计、配置发送策略的话,请参考友盟官方文档。
7.可能还有两点需要注意的问题:a.统计数据安全性,我们可以在app入口的activity里面添加如下代码:
AnalyticsConfig.enableEncrypt(boolean enable);
当参数为true的时候就可以实现对日志信息的加密处理,false就是不加密。b.在对app代码进行混淆的时候,我们需要在混淆文件里面,进行如下配置:
-keepclassmembers class * {
public <init> (org.json.JSONObject);
}
8.还有一点可以认为是友盟统计的高级功能吧,就是计数事件和计算事件,具体区别可参照友盟sdk。
android开发系列之友盟统计集成的更多相关文章
- Android开发之带你轻松集成友盟统计
友盟统计是什么呢?为什么要集成他呢? 当我们需要获取自己写的软件的装机量和用户使用信息时,这时我们可以集成友盟统计. 首先到友盟统计中注册账号什么的就不废话了,直接看创建项目: 在个人中心中的管理里面 ...
- Android 友盟统计的集成与使用(包含多渠道打包配置)
前言 app上线后,一般公司都希望跟踪app在市场上的使用情况.包括新增用户.活跃用户.渠道信息.错误信息等,还有例如商城类的app,需要跟踪用户最喜欢浏览哪种类型的店铺或商品.这些都可以通过集成友盟 ...
- Android开发和測试实践 - 接入友盟统计
这两年一直在做无线的測试,兴许还会继续去做无线的測试,可是之前由于时间的原因一直都没有非常细致的了解到代码层面. 最近抽出时间自己做了些app的开发,决定假设想把移动的測试做好做深入.有一定的app开 ...
- UmengAppDemo【友盟统计SDK集成以及多渠道打包配置,基于V7.5.3版本】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 这里只是记录下集成友盟统计SDK以及简单配置多渠道打包的步骤.所以1.该Demo不能运行:2.配置多渠道打包只是一种简单的写法,具体 ...
- 友盟(Swift)-集成、统计用户数量、具体页面访问数量、具体按钮点击数量
什么是友盟.有什么用? 这些傻瓜问题这里就不解释了,可以自己百度去. 友盟提供的文档和demo都是oc的,这里用swift写了一个小demo,在此分享一下. 步骤1:友盟后台注册应用(iOS),拿到a ...
- Android之2次打开添加友盟统计代码,后缀会添加广告
这里首先列明步骤, 做一个标识仅此而已. 1. 首先使用apktool来反编译你待需要加入友盟统计的apk包, 具体如何使用与配置apktool, 请参考我关于apktool配置的文章. 2. 然后自 ...
- android第三方分享之友盟社会化组件
前言 现在几乎所有的app都带有分享功能,第一为了更好地推广自己的产品,第二作为使用者也能及时的把自己觉得好的文章,话题,app分享到社交平台供大家一起学习和使用.开发中虽然android系统自带分享 ...
- 友盟统计小白教程:创建应用,申请appkey
上回书讲到,我们已经和一个靠谱的人选择一个靠谱的统计平台注册了一个帐号,下面就该创建一个应用了. 介绍一个基础知识: appkey:友盟识别app的唯一标识,目前友盟平台上超过500000款App,每 ...
- gradle多渠道打包及友盟统计-eclipse版本
在进行渠道打包的之前,先看看准备篇,知道打包为了什么. 参见1.0android批量打包认知. eclipse中使用gradle多渠道打包全部流程 一.生成gradle文件,配置本地的gradle环境 ...
随机推荐
- 统计Crash工具—Crashlytics
官网:https://www.crashlytics.com/login 步骤: 注意:有时候再次运行,或者换了Crashlytics账号之后,获取不到Crash信息,其实你需要把plist文件里的K ...
- iOS百度地图探索
新建工程后,几项准备: 1.工程中一个文件设为.mm后缀 2.在Xcode的Project -> Edit Active Target -> Build -> Linking -&g ...
- MFC启动和关闭线程
1. 启动线程: CWinThread* AfxBeginThread( 线程函数,this ); 2.通常导致线程终止的两种情况是:控制函数退出或不允许线程完成运行.如果字处理器使用后台打印线程,若 ...
- windows svn
1.1Svn和VisualSvn介绍 VisualSvn Server2.5.6(版本控制服务器)免费开源软件 是基于Windows平台上的Subversion服务器,它是免费的 官方下载: http ...
- vyos (三) HA
http://empujapalla.blogspot.jp/2014/04/taming-beast-vyatta-66-ha-cluster.html 1 L2TP vpn high availa ...
- python jinjia2模板使用
https://gist.github.com/wrunk/1317933 #!/usr/bin/env python # -*- coding: utf-8 -*- from jinja2 impo ...
- c++ boost--------------boost::progress_timer小试。
//--------------------------------------------------------------------------- #include <vcl.h> ...
- poj3274 哈希
这题终于让我AC了,其过程之艰辛我不想再回忆了,看了各种代码,一定要注意指针空和非空的问题,再一个要注意边界. #include <stdio.h> #include <string ...
- hdu1506
today, my cc can't make '__in64' it's so bad!!! i don't know why #include <stdio.h> //long lon ...
- JS创建对象的方式
1.采用直接量创建方式:系统会使用new方式自动创建对象 var o = {x:1,y:2,z:2}; 2.采用new关键字创建对象:采用构造函数创建对象 var o = new Object();/ ...