摘 要 随着智能手机的普及应用,基于智能手机用户的移动数据分析就越来越重要,许多传统互联网企业也渐渐地转战移动市场,不断地创造移动市场的应用模式和商业模式。本文在分析移动应用数据存在的问题和意义的基础上,探究了基于android系统的移动应用数据分析的方法和设计。
【关键词】android系统 移动数据分析 探究
近年来,移动互联网的快速发展推动了智能手机的普及。现已经有数以百计的移动应用软件在apple的app store(应用商店)和google android 上发布。创业者最重要的就是要能够快速地了解到自已应用程序的市场情况、用户的行为习惯和用户反馈,以及在同等产品中的水平,以便能够及时做出响应和调整。通过使用数据统计分析服务,移动应用的开发商及开发者能够及时分析自己产品的使用情况。应用数据统计分析可以让开发商或开发者了解用户,从而不断优化产品,提高产品质量和用户体验。
1 移动应用数据分析存在的问题与意义
目前,国内外有关用户行为数据统计分析主要以网站流量统计为主,市面上存在的网站流量统计工具有很多,但移动应用数据统计工具非常的少,而且功能都比较单一,不能很好的胜任用户行为数据收集和统计分析的工作。google公司前不久宣布为android移动应用的开发者推出了类似google analysis的数据统计分析工具,为android应用市场的开发者提供服务。
移动应用数据统计分析的意义:(1)全面准确的统计指标,可以统计用户的启动次数、用户启动应用的次数、新增的用户数量等;(2)多种时间粒度上的统计分析;对手机用户提供多种时间粒度的分析数据和图表信息。(3)深入的用户行为分析;系统提供用户的地域分析和页面访问分析功能,针对用户的地域信息和用户行为习惯特别是使用时长和页面访问信息,提供了一系列统计分析指标。
2 基于android系统的移动应用数据分析
基于android移动应用数据统计分析包含:android统计工具sdk和统计分析服务器等两个方面。android统计工具sdk主要运行在手机终端上,主要负责收集终端用户的数据。而统计分析服务器系统,它运行在服务器端,主要负责接收和处理终端用户数据,并展示丰富的数据统计指标。如图1所示。
2.1 android统计工具sdk的分析
2.1.1 调用接口的分析
调用接口模块用来封装提供给移动应用开发者调用的接口,void onpause(context context):用户必须在每个activity的onpause方法中调用 mobileagent. onpause (context),以便sdk收集终端用户数据。
void onresume(context context):用户必须在每个activity的onresume方法中调用 mobileagent. onresume (context),以便sdk收集终端用户数据。
void openfeedbackactivity(context context):调用该接口使用用户反馈功能。
void onevent(context context, string eventid):调用该接口发送单标签事件。
void onevent(context context, string eventid, int acc):调用该接口发送单标签事件累计值。
void onevent(context context, string eventid,string label):调用该接口发送多标签事件。
void onevent(context context, string eventid,string label, int acc):调用该接口发送多标签事件累计值。
void onerror(context context):调用该接口使用错误报告收集功能。
2.1.2 session模块分析
session模块是sdk的核心模块,该模块主要功能是记录用户行为数据以及缓存用户数据到本地,该模块使用的主要存储方式是android系统特有的sharedpreferences存储,分析如下:
void resumesession(context context, string appkey, string channel):当用户调用mobileagent.onresume()方法时会调用该方法,该方法的功能是创建或继承session,并保存session的状态和activity的状态。
string extendsession(context paramcontext, sharedpreferences sp):该方法用来继承已经存在的session。
string createsession(context cont, string appkey,sharedpreferences sp):该方法用来创建session。
void onlaunch(context cont, sharedpreferences sp):当用户启动应用程序时,会调用该方法,该方法会上传
户数据,当用户终端未联网时,该方法会缓存用户数据,当下次启动时并且用户终端处于联网状态时,上传数据。
2.2 统计分析服务器的分析
2.2.1 统计概览分析
统计概况分析是以概览的视角展示统计数据,开发者可以查看实时的终端应用的启动次数、启动用户数量、新用户数量,观察用户的累计增长趋势,统计概览模块提供丰富的图表来展示这些用户数据和趋势变化。 function index():初始化统计指标、时段数据、趋势数据和明细数据,渲染统计概览的页面模板。
function initstats():调用模型层的接口,初始化各项统计指标的数据。
function initchartx():调用模型层的接口,初始化各种数据图表。
function initdetails():调用模型层的接口,初始化每日明细的数据。
统计概览模块主要包括基本统计、时段分析、趋势分析、每日明细。
(1)基本统计。基本统计的统计指标以及词汇解释如表所示:启动次数、启动用户、新户比例、平均使用时长、活跃率、累计用户、累计启动、7天活跃用户(%)、14天活跃用户(%)、14天沉默用户(%)、回头用户(%)
(2)时段分析:以折线图的形式实时地展示一天当中每个小时的数据情况。
包括新用户和启动次数的统计指标,时间可以选择今日、昨日、7天前或30天前。
(3)趋势分析:以折线图或梯度图的形式展示新增的用户数量、已经积累的
用户数量、启动的用户数量、用户启动总次数、用户平均使用时长的变化趋势,评估一段时间内的应用表现,用户可以选择展现某一时段的数据。
(4)每日明细:以表格的形式展示每天的新增用户、积累用户、启动用户、
启动次数、平均使用时长的具体数据,用户可以看到精确到某一天的数据。
2.2.2 用户分析
用户分析模块展示用户地域和用户行为相关的数据,其中包括地域分析子模块和访问页面子模块。
class useraction extends baseaction
public function _initialize()
public function activity()
public function location()
public function initactivity()
public function initlocation()
function activity():渲染用户访问的页面模板。
function location ():渲染用户地域分布的页面模板。
function initactivity ():调用模型层的接口,初始化用户访问页面的数据。
function initlocation ():调用模型层的接口,初始化用户地域分布的数据。
地域分析子模块展示了某一时间段内用户的地域分布情况,包括终端用户的国家分布和省市分布。访问页面子模块记录了用户使用时的页面跳转过程,开发者可以查看到应用程序的每个页面的访问次数,用户跳转率等。
3 总结
移动应用数据的分析在智能手机市场上将占据非常重要的作用,在后续的研究过程中应该进一步改进和优化移动应用数据统计分析工具,不断添加新功能并完成新需求,为用户提供多维度和多粒度的统计数据和用户信息,让它成为一个成熟稳定的技术,让更多的移动终端项目应用该技术,这样可以统计到更多的用户数据,推动移动分析技术的发展与进步。
作者单位
广州番禺职业技术学院财经学院 广东省广州市 511483