页面浏览事件之 $AppViewScreen 全埋点

栏目: Android · 发布时间: 7年前

内容简介:ActivityLifecycleCallbacks 是 Application 的一个内部接口,从 API 14 开始提供的。Application 通过此接口提供了一套回调方法,用于让开发者可以对 Activity 的所有生命周期事件进行集中处理(或者叫监控)。可以通过 application.registerActivityLifecycleCallback 注册 ActivityLifecycleCallbacks。public interface ActivityLifecycleCallbac

页面浏览事件之 $AppViewScreen 全埋点 $AppViewScreen 事件,即页面浏览事件。 在 Android 系统中,页面浏览,其实就是指切换不同的 Activity。那对于一个 Activity,哪个生命周期执行了代表该页面显示出来了呢?通过对 Activity 的生命周期了解可知,其实就是 onResume 生命周期。

Application.ActivityLifecycle- Callbacks

ActivityLifecycleCallbacks 是 Application 的一个内部接口,从 API 14 开始提供的。Application 通过此接口提供了一套回调方法,用于让开发者可以对 Activity 的所有生命周期事件进行集中处理(或者叫监控)。可以通过 application.registerActivityLifecycleCallback 注册 ActivityLifecycleCallbacks。

Application.ActivityLifecycleCallbacks 接口定义如下:

public interface ActivityLifecycleCallbacks {

void onActivityCreated(Activity activity, Bundle savedInstanceState);

void onActivityStarted(Activity activity);

void onActivityResumed(Activity activity);

void onActivityPaused(Activity activity);

void onActivityStopped(Activity activity);

void onActivitySaveInstanceState(Activity activ- ity, Bundle outState);

} void onActivityDestroyed(Activity activity);

以 onResume(Activity activity) 为 例,如 果 注 册 了 ActivityLifecycleCallbacks,Android 系 统 会 先 回 调 ActivityLifecycleCallbacks 的 onActivityResumed 方 法, 然后再执行 Activity 本身的 onResume 函数 ( 请注意这个 调 用 顺 序 ) 。通 过 registerActivityLifecycleCallback 方 法名中的“register”字样可以知道,一个 Application 是 可 以 register 多 个 ActivityLifecycleCallbacks 的,通 过 registerActivityLifecycleCallback 的内部实现也可以证实这一点。

public void registerActivityLifecycleCallbacks (ActivityLifecycleCallbacks callback) {

{ synchronized (mActivityLifecycleCallbacks) back); mActivityLifecycleCallbacks.add(call- }}

原理概述

在应用程序自定义的 Application 对象的 onCreate() 方法中初始化埋点 SDK, 并传入当前的 Application 对象。SDK 拿到 Application 对象之后,通过 registerActivityLifecycleCallback 方法注册 Application.ActivityLifecycleCall- backs。这样 SDK 就能对 App 中所有的 Activity 的生命周期事件进行集中处理 (监控)了。在注册的 Application.ActivityLifecycleCallbacks 的 onActivityRe- sumed 回调方法中,我们可以拿到当前正在显示的Activity对象,然后调用 SDK 的相关接口触发页面浏览事件即($AppViewScreen)。

实现步骤

完整的项目源码后续会 release 给大家。

缺点

注册 Application.ActivityLifecycleCallbacks 要求 API 14+ 。

知识点

Application.ActivityLifecycleCallbacks

注:该内容来自神策数据用户行为洞察研究院出品的《Android 全埋点解决方案》白皮书,查看完整白皮书可点击 《Android 全埋点解决方案》

更多白皮书、报告、干货和案例,可以关注“神策数据”和“用户行为洞察研究院”公众号了解~ 页面浏览事件之 $AppViewScreen 全埋点


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

重来2

重来2

[美] 贾森·弗里德、[美] 戴维·海涅迈尔·汉森 / 苏西 / 中信出版社 / 2014-4-8 / 39.00元

“不再需要办公室”,这不仅仅是未来才有的事——它已经发生了。现在,轮到你迈开脚步,跟上时代的步伐了。 上百万的员工和成千上万的企业已经发现了远程工作的乐趣和好处。然而,远程工作方式还没有成为常见的选择。事实上,远程工作的技术手段都已齐备。还没有升级换代的,是人们的思想。 这本书的目的就是帮你把想法升级换代。作者会向你展示远程工作的诸多好处:可以找到最优秀的人才,从摧残灵魂的通勤路上解脱......一起来看看 《重来2》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试