友盟---诊断跟踪工具

2024-01-29 23:18
文章标签 工具 诊断 跟踪 友盟

本文主要是介绍友盟---诊断跟踪工具,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

http://scofield-android.iteye.com/blog/1350499


1- 导入Analytics_Android_SDK_2.1.jar

       Eclipse用户   右键您的工程根目录,选择Properties -> Java Build Path -> Libraries, 然后点击Add External JARs... 选择指向Analytics_Android_SDK_2.1.jar的路径,点击OK,即导入成功。
      Android SDK tools   如果您是直接使用android SDK tools,只要将Analytics_Android_SDK_2.1.jar放在应用程序的libs目录下,and task会自动识别出来。

2-  配置AndroidManifest.xml
  1. android.permission.INTERNET  
    向我们的服务器发送用户分析数据。
  2. android.permission.READ_PHONE_STATE 
     这个权限仅为了获取用户手机的IMEI,用来唯一的标识用户。
  3. android.permission.READ_LOGS  (可选),
    如果您想获得客户端crash的报告, 需要添加这个权限。具体见高级功能 错误报告
  4. 将应用程序的Appkey (需要先添加应用程序获得Appkey)
    写到AndroidManifest.xml的meta-data里。
    <application......>
    ...
    <meta-data android:value=" XXXXXXYOURAPPKEYXXXXXXX
    android:name=" UMENG_APPKEY">
    </meta-data>
    ...
    </application>
3.添加代码
  1. 添加 import com.mobclick.android.MobClickAgent
  2. 在每个Activity的onResume方法中调用 MobclickAgent.onResume(Context), 传入的参数为当前context的引用, 这个方法将会自动地从AndroidManifest.xml文件里读取Appkey。 
    这里请不要将全局的application context传入。
    public void onResume() {
    super.onResume();
    MobclickAgent.onResume(this);
    }
  3. 在每个Activity的onPause方法中调用MobclickAgent.onPause(Context), 
    只需传入一个参数当前activity的context.
    public void onPause() {
    super.onPause();
     MobclickAgent.onPause(this);
    }
一个应用程序在多个activity之间连续切换时,将会被视为同一个session,
所以需要您确保在所有的activity中都调用 MobclickAgent.onResume()和MobclickAgent.onPause()方法,这两个调用将不会阻塞应用程序的主线程,也不 会影响应用程序的行能。
 当用户两次使用之间间隔超过30秒时,将被认为是两个的独立的session
例如用户回到home,或进入其他程序,经过一段时间后再返回之前的应用。
测试
  1. 确认所需的权限都已经添加:
    INTERNET, READ_PHONE_STATE, (READ_LOGS for crash report)
  2. 确认APPKEY已经正确的写入manifest.xml
  3. 确认所有的Activity中都调用了onResume和onPause方法
  4. 确认测试手机(或者模拟器)已成功连入网络
  5. 启动应用程序,几分钟之后您应该已经可以看到相应的报表.
  6. 如果几分钟后报表中仍然没有收到数据,请与我们的技术支持联系 QQ1589487991 或者邮件到support@umeng.com我们会尽快回复您

高级功能

  
1--错误报告 (crash report)
友盟统计分析工具,还可以帮助您捕捉用户在使用应用程序过程中出现的异常退出(FC), 并在应用程序 下次启动时将错误报告发送给服务器。
错误报告包含应用程序版本,操作系统版本和设备型号以及程序出现异常时的Stacktrace,这些数据将帮助您修正应用程序Bug。
您需要在AndroidManifest.xml里面添加权限 android.permission.READ_LOGS
并且在程序的Main Activity (应用程序入口)的 onCreate方法里调用MobclickAgent.onError(Context):

public void onCreate(Bundle savedinstanceState) {
super.onCreate(savedInstanceState);
MobclickAgent.onError(this);
...
}
2自定义事件分析
除了的基本统计分析功能外,我们还支持您自定义的事件分析,
例如您可以统计游戏中通过不同关卡的人数,广告的点击次数或者视频被播放的次数等等。
这里我们将提供几个简单而通用的接口:
  1. 简单事件
    MobclickAgent.onEvent(Context context, String event_id);
    将统计event_id对应事件的发生次数,变化趋势,例如广告点击,短信数量等等。参数 context为当前context的引用。 event_id为当前统计的事件ID,您可以在程序里直接定义,但是我们推荐您在  这里 预先定义。
    一个例子,监测应用程序里广告的点击次数,事件ID为“ad_click”。那么需要在程序里每次广告点击后调用 MobclickAgent.onEvent(this, "ad_click") 通知服务器一个广告点击事件。
  2. 多标签事件
    MobclickAgent.onEvent(Context context, String event_id, String label);
    除了能够统计event_id所对应事件的发生次数,变化趋势外,还能统计事件中具体标签所占的比例。 label为当前标签。
    例如在我们的demo应用程序“星座罗盘”中,定义了一个事件“星座关注分布”,每个星座对应这个事件中的一个标签。我们可以在生产的统计图表中看到用户关注不同星座的比例。
  3. 事件累计
    在应用程序中某些自定义事件可能会被频繁触发,例如用户点击某个按钮。开发者可以在程序中维护一个计数器,这样某个事件被多次触发但只需要生成一个消息,这个消息中包括该事件被触发的次数。为了支持这个功能,这里我们简单重载了之前的两个接口:
    MobclickAgent.onEvent(Context context, String event_id, int acc);
    MobclickAgent.onEvent(Context context, String event_id, String label, int acc);
    参数acc是对应事件 (和对应标签)被触发的次数。
分发渠道分析
我们还提供方法帮助您分析应用程序的分发渠道,
例如有多少用户来自于联想乐phone,又有多少用户通过Google android market下载到您的应用程序。
简单的您只需要在AndroidManifest.xml里添加meta-data:。
<meta-data android:value=" Channel ID" android:name=" UMENG_CHANNEL">
当然,这需要您在不同渠道发布应用程序时,重新编译打包。


发送策略

1--实时发送
应用程序产生每条消息(包括启动信息,自定义消息,退出消息)时都会立即发送到服务器,
设置实时发送需要在应用程序Main Activity的onCreate()中调用。
  MobclickAgent.setReportPolicy(ReportPolicy.REALTIME);

2--启动时发送
应用程序每次只会在启动时会向服务器发送一次消息,在应用程序过程中产生的所有消息(包括自定义事件和本次使用时长)都会在下次启动时候发送。
如果应用程序启动时处在不联网状态,那么消息将会缓存在本地,下次再尝试发送。
发送策略默认为启动时发送。

这篇关于友盟---诊断跟踪工具的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/658486

相关文章

SQL Server跟踪自动统计信息更新实战指南

《SQLServer跟踪自动统计信息更新实战指南》本文详解SQLServer自动统计信息更新的跟踪方法,推荐使用扩展事件实时捕获更新操作及详细信息,同时结合系统视图快速检查统计信息状态,重点强调修... 目录SQL Server 如何跟踪自动统计信息更新:深入解析与实战指南 核心跟踪方法1️⃣ 利用系统目录

基于Python实现简易视频剪辑工具

《基于Python实现简易视频剪辑工具》这篇文章主要为大家详细介绍了如何用Python打造一个功能完备的简易视频剪辑工具,包括视频文件导入与格式转换,基础剪辑操作,音频处理等功能,感兴趣的小伙伴可以了... 目录一、技术选型与环境搭建二、核心功能模块实现1. 视频基础操作2. 音频处理3. 特效与转场三、高

基于Python开发一个图像水印批量添加工具

《基于Python开发一个图像水印批量添加工具》在当今数字化内容爆炸式增长的时代,图像版权保护已成为创作者和企业的核心需求,本方案将详细介绍一个基于PythonPIL库的工业级图像水印解决方案,有需要... 目录一、系统架构设计1.1 整体处理流程1.2 类结构设计(扩展版本)二、核心算法深入解析2.1 自

Python办公自动化实战之打造智能邮件发送工具

《Python办公自动化实战之打造智能邮件发送工具》在数字化办公场景中,邮件自动化是提升工作效率的关键技能,本文将演示如何使用Python的smtplib和email库构建一个支持图文混排,多附件,多... 目录前言一、基础配置:搭建邮件发送框架1.1 邮箱服务准备1.2 核心库导入1.3 基础发送函数二、

基于Python实现一个图片拆分工具

《基于Python实现一个图片拆分工具》这篇文章主要为大家详细介绍了如何基于Python实现一个图片拆分工具,可以根据需要的行数和列数进行拆分,感兴趣的小伙伴可以跟随小编一起学习一下... 简单介绍先自己选择输入的图片,默认是输出到项目文件夹中,可以自己选择其他的文件夹,选择需要拆分的行数和列数,可以通过

Python使用pip工具实现包自动更新的多种方法

《Python使用pip工具实现包自动更新的多种方法》本文深入探讨了使用Python的pip工具实现包自动更新的各种方法和技术,我们将从基础概念开始,逐步介绍手动更新方法、自动化脚本编写、结合CI/C... 目录1. 背景介绍1.1 目的和范围1.2 预期读者1.3 文档结构概述1.4 术语表1.4.1 核

Python使用OpenCV实现获取视频时长的小工具

《Python使用OpenCV实现获取视频时长的小工具》在处理视频数据时,获取视频的时长是一项常见且基础的需求,本文将详细介绍如何使用Python和OpenCV获取视频时长,并对每一行代码进行深入解析... 目录一、代码实现二、代码解析1. 导入 OpenCV 库2. 定义获取视频时长的函数3. 打开视频文

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.

sqlite3 命令行工具使用指南

《sqlite3命令行工具使用指南》本文系统介绍sqlite3CLI的启动、数据库操作、元数据查询、数据导入导出及输出格式化命令,涵盖文件管理、备份恢复、性能统计等实用功能,并说明命令分类、SQL语... 目录一、启动与退出二、数据库与文件操作三、元数据查询四、数据操作与导入导出五、查询输出格式化六、实用功

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间