Android全埋点-页面浏览事件

本文详细介绍了Android全埋点的概念,包括AppStart、AppEnd、AppViewScreen和AppClick事件。重点讲解了AppViewScreen全埋点方案,通过Application.ActivityLifecycleCallbacks接口监听Activity的生命周期,实现页面浏览数据的自动采集。还提供了Kotlin实战示例,展示如何在实际项目中应用全埋点技术。
摘要由CSDN通过智能技术生成

全埋点

全埋点也叫无埋点,自动埋点。是指预先自动收集用户的所有行为数据。然后就可以根据收集的数据从中筛选出所需的行为数据进行分析。

采集的事件类型

全埋点采集的事件主要包括以下4种类型:

AppStart事件

指应用程序的启动,它包括冷启动和热启动。

AppEnd事件

指应用程序退出,它包括了应用程序的正常退出、Home键进入后台、应用程序被强杀以及应用程序崩溃。

AppViewScreen事件

指应用程序页面浏览,对于Android应用程序来说就是指Activity或Fragment的切换。

AppClick事件

指应用程序控件的点击事件,也就是View的点击事件。

AppViewScreen全埋点方案

页面浏览事件就是指切换不同的Activity或Fragment,对于一个Activity来说它的onResume()方法执行,就代表该页面已经显示出来了,即该页面被浏览。所以我们只需要自动在onResume()方法中实现处理AppViewScreen事件相关的代码,即可解决AppViewScreen事件全埋点

Application.ActivityLifecycleCallbacks

ActivityLifecycleCallbacksApplication的一个内部接口,是从API14(Android4.0)开始提供的。Application类通过此接口提供了一系列的回调方法,用于让开发者可以对Activity的所有生命周期事件进行集中的处理。我们可以通过** Application**提供的registerActivityLifecycleCallbacks方法来注册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 activity, Bundle outState);
    void onActivityDestroyed(Activity activity);
}

ActivityonResume()方法为例,如果我们注册了该接口,Android系统会先回调ActivityLifecycleCallbacksonActivityResumed(Activity activity)方法,然后再执行Activity本身的onResume()方法。(注意:一个Application是可以注册多个ActivityLifecycleCallbacks回调的)

除了使用该方法,我们可能还会想到定义一个BaseActivity,然后让其他的Activity继承这个BaseActivity。但是这样会有一个问题。如果我们在应用中集成了一些第三方库,并且我们用到了三方库中的Activity,此时我们是无法监控该页面的浏览事件的。因为我们无法让它去继承我们自定义的BaseActivity。所以我们采用Application.ActivityLifecycleCallbacks,不过该方案需要API14+,不过现在主流的机型都已经满足了。

代码实战

1.定

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值