友盟统计分析Android SDK 4.6.3 新功能介绍 :Fragment页面统计

 

1、什么是Fragment

Android3.0 发布之后,很多开发者已经在使用Fragment控件。友盟近期推出的统计分析Android sdk 4.6.3 版本中增加了对Fragment页面的统计。使用Fragment布局的App可以如下。

 

2、友盟统计分析Android sdk 4.6.2及之前的页面统计方案

友盟之前的页面统计都是通过Activity自动实现的。开发者注册Activity,在每个Activity的onResume方法中调用 MobclickAgent.onResume(Context), onPause方法中调用 MobclickAgent.onPause(Context)。这两个方法会回传页面序列以及页面时长至友盟服务器,从而计算得到页面路径、页面时长、App时长信息。

 

3、支持Fragment统计的方案

Android 3.0之后,Fragment的出现,细化了页面的粒度。现在的应用可能由Activity、Fragment、自定义的View组成。针对Android页面的灵活多样化,我们对页面访问的统计也增加了灵活性。

使用友盟统计分析Android 4.6.3对Fragment统计,开发者需要:

  • 首先在程序入口处调用MobclickAgent.openActivityDurationTrack(false) 来禁止默认的Activity页面统计方式。
  • 然后在每个期望被统计的页面的开始和结束方法中分别调用 MobclickAgent.onPageStart(String pageName),MobclickAgent.onPageEnd(String pageName)这两个方法会回传页面序列以及页面时长至友盟服务器,从而计算得到页面路径、页面时长、App时长信息。被统计的页面要保证线性且不交叉,从而保证页面统计的正确性。

在Activity页面集成代码:

在Fragment页面集成代码:

 

4、策略开关

开发者可以选择基于Activity页面统计的方式,也可以选择基于Fragment页面统计的方式。在一个App中,能且仅能选择其中一种统计方式。通过 MobclickAgent.openActivityDurationTrack(boolean traceActivity)  来控制。

 

5、使用案例

图为三种典型的页面统计场景

  1. 纯粹基于 Activity 的页面
  2. Activity中包含 Fragment 的页面(也有可能是Fragment包含Fragment)
  3. Activity 中包含多个并列 Fragment 的页面

对于场景1 只需要按照文档说明在 Activity 调用相关函数即可。但是对于场景2,开发则可以统计外层测Activity或者内部的Fragment 。对于场景3一个Activity中包含多个 Fragment 开发者可以统计外层 Activity 或者 里面包含的任一个fragment。

 

2 thoughts on “友盟统计分析Android SDK 4.6.3 新功能介绍 :Fragment页面统计

  1. 您好!
    请问,如果我的应用里面既有Activity之间的跳转,又有ActivityGroup中Activity之间的跳转应该使用哪种页面统计场景?

  2. 使用了上面说的的策略了,但是不显示啊,pageName是每一个activity的名称,但是不显示

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">