注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

云水禅心

淡若秋菊何妨瘦, 清到梅花不畏寒.

 
 
 

日志

 
 

Cobub Razor-开源的、移动应用分析系统 Android 开发者指南  

2013-05-15 11:30:55|  分类: Android |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

官网:http://dev.cobub.com/zh/docs/cobub-razor/android-developer-guide/ 

Cobub Razor-开源的、移动应用分析系统 Android 开发者指南

本文档适用于Cobub Razor-开源的、移动应用分析系统的Version 0.4版本。请访问release note获取更多版本信息。

  1. 概要
  2. 基本设置指南
  3. 高级基本设置指南
  4. 应用程序更新
  5. 数据发送
  6. 使用在线配置功能

1   概要

1.1   文档目的

本文档的目的是讲解Cobub Razor-开源的、移动应用分析系统 Android  SDK 的使用规则,方便开发者的使用。

1.2   适用范围

本文档是适用于 Cobub Razor开源移动统计平台的Android  SDK 的使用者。

1.3   术语和缩写

Cobub Razor  -  开源移动应用统计分析

1.4   相关文档

2   基本设置指南

2.1   注册应用,获取AppKey,下载开发文档

登陆账号后,到管理后台注册应用,填写Android应用的相关信息。App建立成功后,可获得该App的AppKey以及最新的开发文档。

2.2   Android SDK使用步骤

2.2.1   导入com.wbkit1.0.jar(简称SDK)

打开放在服务端的android_sdk, 导入android_sdk到eclipse,打包生成的bin\classes下com文件夹为com.wbkit1.0.jar。

Eclipse用户右键工程根目录,选择Properties —>Java  Build Path —>libraries,然后点击Add External JARs…选择指向 com.wbkit1.0.jar的路径,点击OK,即导入成功。

2.2.2    配置AndroidManifest.xml

  •   添加应用程序的AppKey(必须)

需要先添加应用程序获得的AppKey,将AppKey添加到AndroidManifest.xml的meta-data里。

(注意:字符串必须为’UMS_APPKEY’)

  •   添加权限android.permission.INTERNET(必须)

向服务器发送用户的统计分析数据。

  •   添加权限android.permission.READ_PHONE_STATE(必须)

获取手机的相关状态信息

  •   添加权限android.permission.ACCESS_FINE_LOCATION(必须)

获取当前用户的位置信息

  •   添加权限android.permission.ACCESS_WIFI_STATE(必须)

访问Wi-Fi网络状态信息

  •   添加权限android.permission.GET_TASKS(必须)

获取最近运行任务信息

  •   添加权限android.permission.WRITE_EXTERNAL_STORAGE(必须)

向sdcard读写文件

  •   添加权限android.permission.READ_LOGS(必须)

读取程序产生的错误日志

  •   添加权限android.permission.ACCESS_NETWORK_STATE(必须)

访问GSM网络信息

AndroidManifest.xml 文件详细如下:

2.2.3   添加代码

  •   添加引用

import com.wbtech.ums.UmsAgent;

  • 设置服务器URL

在Android应用的入口Activity的onCreate()方法中调用UmsAgent.setBaseURL(String url)方法,注意这个方法应置于所有其他的方法之前。

  •   注册Activity

在Android应用的每个Activity的onResume方法中调用UmsAgent.onResume(Context),传入的参数为当前的context引用,这个方法将会自动地从AndroidManifest.xml文件里读取AppKey,并记录下用户进入该页面的时间。不要传递全局的application context。

在Android应用的每个Activity的onPause方法中调用UmsAgent.onPause(Context),参数为当前activity的context,该方法会记录下用户离开该页面的时间。

在onCreate()调用UmsAgent.postClientData(Context con)方法,参数为当前上下文对象,这样,客户端数据就可以上传数据到服务器了。

代码样例:

2.2.4   集成说明

建议在Android应用的所有的activity中都调用UmsAgent.onResume()UmsAgent.onPause()方法。如果在某些activity中不添加也可以,但会造成相应Activity的使用时间等相关信息统计不到。

2.2.5   注意事项

  •   AppKey

确认AppKey已经正确的写入Androidmanifest.xml

  •   权限

确认所需的权限都已经添加

  •   API使用

确认所有的Activity中都调用了onResume和onPause方法

  •   联网检查

确认测试手机或者模拟器已成功连入网络

3   高级基本设置指南

3.1   错误报告

SDK可以帮您捕捉用户在使用应用过程中出现的异常退出(FC),并将错误报告发送给服务器,错误报告包含应用程序版本、操作系统版本和设备型号以 及程序出现异常时的Stacktrace,这些数据将帮助您调试应用程序的错误。我们提供两种方式报告错误信息,一种是我们自动捕获的错误信息,一种是开 发者自己传递的错误

前者,您需要在AndroidManifest.xml里面添加权限android.permission.READ_LOGS,并且在程序的Main Activity(应用程序入口)的onCreate方法里调用UmsAgent.onError(Context)

后者需要开发者调用UmsAgent.onError(Context,String)方法,在第二个参数中传入自己捕获的错误信息。

3.2   自定义事件

除了基本统计分析功能外,SDK还支持您自定义的事件的统计分析,例如您可以统计广告点击次数或者视频被播放的次数等等,这里我们将提供几个简单而通用的接口:

UmsAgent.onEvent(Context context,String event_id)

在您需要发送事件报告的代码段,调用如下方法就可以向服务器发送事件记录,将统计event_id对应事件发送次数,变化趋势,例如广告点击,短信发送量等等。参数context为当前context的引用,event_id为当前统计事件的ID。

比如,监测应用程序里广告的点击次数,事件ID为“ad_click”。那么需要在程序里每次广告点击时调用UmsAgent.onEvent(this,“ad_click“)通知服务器一个广告点击事件发生。

UmsAgent.onEvent(Context context,String event_id,String label)

除了能够统计event_id所对应事件的发生次数,变化趋势外,还能统计事件中具体标签所占的比例,label为当前标签,同样这里的event_id字符串中也不能有空格。

例如:在应用程序中省份对应一个event_id,每个城市对应一个label,这样我们可以再生成的统计表中看到不同城市的比例。

对于程序中的某些可能被频繁触发的事件,开发者可以再程序中维护一个计数器,这样事件被多次触发只需要生成一个消息,这个消息包括该事件被触发的次数,这里我们重载了之前的两个接口:

UmsAgent.onEvent(Context context,String event_id,int acc)

UmsAgent.onEvent(Context context,String event_id,String label,int acc)

acc:对应事件被触发的次数。

3.3 分发渠道分析

不同的发布渠道,对应着不同的appkey,统计结果可以使您很好的了解有多少用户从联想乐园或者Google android market 下载到您的应用程序。

4   应用程序更新

4.1   上传APK

这个功能将帮助您把新版的Android应用程序推送给用户,您只需修改AndroidManifest.xml中的VersionCode,并把应用程序的apk文件上传到服务器。

4.2   添加权限

android.permission.WRITE_EXTERNAL_STORAGE

4.3   基本功能

在Android应用程序的入口Activity的onCreate()方法中调用UmsAgent.update(this),应用程序将自动检测服务端是否有新的版本。

考虑到用户流量的限制,目前我们默认在Wi-Fi介入情况下才进行自动提醒。

4.4   机制说明

每次更新Android应用程序,您只需要修改VersionCode,把Android应用程序的apk文件上传到服务器。 UmsAgent.update()方法会判断是否有新版应用程序,如果发现可更新的应用程序安装包,会提示用户是否更新。用户选择更新后,安装包会下载 安装更新。(按照version code来检测是否需要更新)

5   数据发送

5.1   模式解释

  •   启动时发送(推荐使用)

应用程序每次只会在启动时向服务器发送一次消息,在应用程序过程中产生的所有消息都会在下次启动时候发送。如果应用程序启动时处在不联网状态,那么消息将会缓存在本地,下次再尝试发送。

  •   实时发送

应用程序每产生条消息时,就立即发送到服务器

5.2   设置发送模式

在Android应用程序的入口Activity中调用UmsAgent.setDefaultReportPolicy(Context,int),参数int可取值0或者1,其中1表示实时发送,0表示启动时发送。

6   使用在线配置功能

UmsAgent.updateOnlineConfig(Context)

在Android应用程序的入口Activity的onCreate()方法中调用。SDK将联网检测您的在线配置,将这些信息保存在本地。你也可以通过下面的方法读取您的自定义参数。

UmsAgent.updateOnlineConfig(Context context,String key) 其中key为在网站上编辑好的key,返回值是对应的value ,如果没有读到相应的value将返回空字符串。

  评论这张
 
阅读(1674)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018