CN107870933B - 统计安卓应用页面浏览行为的方法、装置及系统 - Google Patents
统计安卓应用页面浏览行为的方法、装置及系统 Download PDFInfo
- Publication number
- CN107870933B CN107870933B CN201610854031.2A CN201610854031A CN107870933B CN 107870933 B CN107870933 B CN 107870933B CN 201610854031 A CN201610854031 A CN 201610854031A CN 107870933 B CN107870933 B CN 107870933B
- Authority
- CN
- China
- Prior art keywords
- activity
- life cycle
- state information
- cycle state
- page
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种统计安卓应用页面浏览行为的方法、装置及系统,能够实现在统计安卓应用的页面打开、关闭等事件的同时,无需在每个页面人工调用SDK接口进行页面监控;并且可以实现自动化埋点,只需要很少的部署工作就可实现对安卓应用所有页面的监控,投入少而产出高,从而提高埋点效率。该方法包括:创建基类BaseActivity,在所述基类BaseActivity中对Activity生命周期方法进行重写,以实现对Activity的生命周期状态信息的拦截;页面运行过程中,由于Activity继承基类BaseActivity,基类BaseActivity实现对Activity生命周期状态信息的拦截;对拦截到的Activity的生命周期状态信息进行处理,生成埋点日志并保存。
Description
技术领域
本发明涉及计算机技术及软件领域,尤其涉及一种统计安卓应用页面浏览行为的方法、装置及系统。
背景技术
目前安卓应用埋点较为流行的方式是基于SDK(Software Development Kit,即软件开发工具包)的分析统计,通过在应用中嵌入一段SDK代码实现。SDK提供上报页面浏览日志的程序接口,安卓应用需要在所有需埋点的页面中手动调用相应接口,实现该页面相关参数的上传:页面类名、页面参数、页面加载时长等。应用运行过程中,通过接口触发SDK采集客户端时间、会话、创建时间等用户启动和使用应用过程中产生的信息,通过SDK以日志的形式记录在应用中。当发送条件被触发后,这些日志被发送到服务器进行下一步处理和分析。
实现原理如下:
1)在应用工程中嵌入SDK程序包;
2)对需要统计埋点的页面逐一调用SDK代码内上报浏览埋点接口,上传相关参数;
3)测试人员逐页面进行埋点测试,确保无漏埋、误埋;
4)用户访问埋点页面时,触发SDK进行页面参数采集,组装形成日志;
5)用户访问未埋点页面时,未触发SDK,无相关数据采集;
6)日志数据暂存本地,待满足上报条件后上报至数据采集服务器;
7)数据采集服务器接收应用页面浏览数据进行分析处理。
具体流程可参阅图1。
如上描述,现有技术需要人工手动对页面进行埋点,因此存下以下缺陷:
1)一款应用往往包含众多页面,要想分析应用整体的使用时长等指标需要应用所有页面都埋点;要想统计单个页面的使用时长,也需要对该页面所有关联页面埋点,每个埋点页面都需要人工调用SDK接口实现埋点,过程繁琐,且人工重复性工作量较大;
2)人工手动进行页面埋点存在漏埋、误埋风险,后期测试需要逐页面验证,测试成本较高;
3)每个埋点页面需要人工上传参数标记页面,但这些上传的页面参数利用率较低,导致埋点效率较低。
发明内容
有鉴于此,本发明提供一种统计安卓应用页面浏览行为的方法、装置及系统,能够实现在统计安卓应用的页面打开、关闭等事件的同时,无需在每个页面人工调用SDK接口进行页面监控;并且可以实现自动化埋点,只需要很少的部署工作就可实现对安卓应用所有页面的监控,投入少而产出高,从而提高埋点效率。
为实现上述目的,根据本发明的一个方面,提供了一种统计安卓应用页面浏览行为的方法。
本发明的一种统计安卓应用页面浏览行为的方法包括:创建基类BaseActivity,在所述基类BaseActivity中对Activity生命周期方法进行重写,以实现对Activity的生命周期状态信息的拦截;页面运行过程中,由于Activity继承基类BaseActivity,基类BaseActivity实现对Activity生命周期状态信息的拦截;对拦截到的Activity的生命周期状态信息进行处理,生成埋点日志并保存。
可选地,对拦截到的Activity的生命周期状态信息进行处理,生成埋点日志并保存还包括:将拦截到的Activity的生命周期状态信息通过广播的方式发送至处理单元;处理单元根据统计需求,筛选需要记录的Activity的生命周期状态信息,并获取与所述Activity的生命周期状态信息相关的信息,所述信息包括采集页面Activity名称、状态生效时间信息,生成埋点日志并保存。
可选地,对拦截到的Activity的生命周期状态信息进行处理,生成埋点日志并保存还包括:获取设备类型、网络环境、地理位置信息,与基类BaseActivity拦截到的Activity的生命周期状态信息一并生成JSON格式的埋点日志并保存。
可选地,所述方法还包括:预先根据统计需求制定埋点列表,所述埋点列表中包括需统计生命周期状态信息的Activity的名称;以及将拦截到的Activity的生命周期状态信息与所述埋点列表进行对比,若拦截到的Activity生命周期状态信息对应的Activity名称存在于所述埋点列表,则保存所述埋点日志,否则不予保存。
为实现上述目的,根据本发明的另一方面,提供了一种统计安卓应用页面浏览行为的装置。
本发明的一种统计安卓应用页面浏览行为的装置包括:重写模块,用于创建基类BaseActivity,在所述基类BaseActivity中对Activity生命周期方法进行重写,以实现对Activity的生命周期状态信息的拦截;继承模块,用于页面运行过程中,由于Activity继承基类BaseActivity,基类BaseActivity实现对Activity生命周期状态信息的拦截;处理模块,用于对拦截到的Activity的生命周期状态信息进行处理,生成埋点日志并保存。
可选地,所述处理模块还用于:将拦截到的Activity的生命周期状态信息通过广播的方式发送至处理单元;处理单元根据统计需求,筛选需要记录的Activity的生命周期状态信息,并获取与所述Activity的生命周期状态信息相关的信息,所述信息包括采集页面Activity名称、状态生效时间信息,生成埋点日志并保存。
可选地,所述处理模块还用于:获取设备类型、网络环境、地理位置信息,与基类BaseActivity拦截到的Activity的生命周期状态信息一并生成JSON格式的埋点日志并保存。
可选地,所述处理模块还用于:预先根据统计需求制定埋点列表,所述埋点列表中包括需统计生命周期状态信息的Activity的名称;以及将拦截到的Activity的生命周期状态信息与所述埋点列表进行对比,若拦截到的Activity生命周期状态信息对应的Activity名称存在于所述埋点列表,则保存所述埋点日志,否则不予保存。
为实现上述目的,根据本发明的再一方面,提供了一种统计安卓应用页面浏览行为的系统。
本发明的一种统计安卓应用页面浏览行为的系统包括存储器和处理器,其中:所述存储器存储指令;所述处理器被配置为根据所述指令执行下列步骤:创建基类BaseActivity,在所述基类BaseActivity中对Activity生命周期方法进行重写,以实现对Activity的生命周期状态信息的拦截;页面运行过程中,由于Activity继承基类BaseActivity,基类BaseActivity实现对Activity生命周期状态信息的拦截;对拦截到的Activity的生命周期状态信息进行处理,生成埋点日志并保存。
为实现上述目的,根据本发明的又一方面,提供了一种电子设备。
本发明的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明的统计安卓应用页面浏览行为的方法。
为实现上述目的,根据本发明的又一方面,提供了一种计算机可读介质。
本发明的一种计算机可读介质,所述计算机可读介质存储有计算机指令,所述指令被处理器执行时实现本发明实施例的统计安卓应用页面浏览行为的方法。
根据本发明的技术方案,通过基于监控所有页面的Activity生命周期实现对安卓应用页面浏览行为的统计,从而可以实现无需逐页面调用SDK上报接口实现页面埋点数据采集,使得埋点难度及复杂性降低;此外,亦无需人工手动进行页面埋点代码部署,实现页面埋点自动化,使人工投入成本降低;通过制定埋点列表,从而可以实现页面埋点定制处理,从而有利于降低研发维护成本,提升埋点效率,且后期测试不用担心埋点出现漏传参数、误传参数现象,测试投入成本降低;通过获取与Activity生命周期状态信息相关的信息以及设备、网络环境、地理位置等信息,一并生成埋点日志,从而方便统计分析人员对页面浏览行为进行高效的统计。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是现有技术统计安卓应用页面浏览行为的方法的原理的示意图;
图2是根据本发明实施例的统计安卓应用页面浏览行为的方法的主要步骤的示意图;
图3是根据本发明实施例的统计安卓应用页面浏览行为的方法的原理的示意图;
图4是跟本发明实施例的统计安卓应用页面浏览行为的装置的主要模块的示意图;
图5是跟本发明实施例的统计安卓应用页面浏览行为的系统的主要部分的示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本发明实施例的目的是实现统一处理安卓应用的页面打开、关闭等事件,从而不用在每个页面人工调用SDK接口进行页面监控;同时实现自动化埋点,只需要很少的部署工作就可实现对安卓应用所有页面的监控,投入少而产出高,提高埋点效率。
图2是根据本发明实施例的统计安卓应用页面浏览行为的方法的主要步骤的示意图。
如图2所示,本发明实施例的一种统计安卓应用页面浏览行为的方法包括:
步骤S21:创建基类BaseActivity,在所述基类BaseActivity中对Activity生命周期方法进行重写,以实现对Activity的生命周期状态信息的拦截。
Activity是安卓应用的组件之一,用于展示页面窗口。安卓应用的页面以Activity为载体实现。Activity的生命周期分为onCreate、onStart、onResume、onPause、onStop和onDestroy,具体来说,当Activity被第一次调用时,就会执行onCreate方法。当Activity处于可见状态的时候会调用onStart方法,当Activity可以得到用户焦点的时候会调用onResume方法,当Activity没有被销毁且被重新调用时会调用onRestart方法,当Activity被遮挡住的时候会调用onPause方法,当Activity处于不可见状态的时候会调用onStop方法,当Activity被销毁时会调用onDestory方法。一个页面的展示和消失都需要经过这几个阶段,通过监控Activity的生命周期,就可以监控一个页面的打开、关闭以及用户在页面上停留的时间。
本发明实施例中,通过创建基类BaseActivity,在基类BaseActivity的方法中重写Activity的所有的生命周期,实现对页面浏览行为的监控。
步骤S22:页面运行过程中,Activity继承基类BaseActivity,由于Activity继承基类BaseActivity中的重写方法,基类BaseActivity就可实现对Activity生命周期状态信息的拦截。
本发明实施例中,基类BaseActivity和各页面的Activity类是父类和子类的关系,子类通过继承父类,可以复用父类的数据成员和成员方法。在基类中可以对Activity的状态函数进行重写。所谓重写,就是在函数里加一些需要的标记,使得Activity在执行时,能够对各个状态进行打标和记录。
举例而言,可以在基类BaseActivity中对onStart方法进行重写,Activity继承基类BaseActivity之后,在Activity创建或者从后台重新回到前台时会调用基类BaseActivity中重写后的onStart方法。在重写方法中,对Activity的状态进行标记,比如'ACTIVITY_START'。就可实现对Activity生命周期状态信息的拦截。
拦截到Activity的生命周期状态信息后,从步骤S23进行处理。
步骤S23:对拦截到的Activity的生命周期状态信息进行处理,生成埋点日志并保存。
将拦截到的Activity的生命周期状态信息通过广播的方式发送至处理单元;处理单元根据统计需求,筛选需要记录的Activity的生命周期状态信息,并获取与所述Activity的生命周期状态信息相关的信息,所述信息包括采集页面Activity名称、状态生效时间信息,生成埋点日志并保存。
具体而言,对获取到的Activity的生命周期状态信息后,将需要的信息通过广播的形式发送出去。在注册监听广播后,需要有相关的函数方法来对监听到的信息做处理,比如筛选需要的Activity的生命周期状态信息,以及进一步获取此次操作行为的相关信息,比如采集页面类名、当前时间等,或者进行更复杂的信息组装,生成包含其他全量信息的原始日志等。其他相关信息的获取同样可以通过基类BaseActivity的重写方法进行,可以通过编写函数记录更多所需的Acitvity的信息,比如Activity的名称、生效时间等,在Activity复用这一方法时,获取上述信息。
拦截到Activity的生命周期状态信息后,可以按一定格式生成log记录并存储下来。log记录是后期生成页面浏览日志的基础,log的内容可以参考“页面名称|页面状态|状态生效时间|其他参数|…”的格式,最终形成的页面日志格式可以不局限于此。
此外,还可以将拦截到的Activity生命周期状态信息及其他相关信息与基于SDK获取的其他信息,比如设备类型、网络环境、地理位置等信息一起组装,最终以json串的形式的埋点日志记录下来。SDK采集到的日志会保存在客户端本地的数据文件中,最后这些本地日志通过上报请求的方式发送至日志服务器进行后续统计等处理。
本发明实施例中,统计安卓应用页面浏览行为的方法还可以包括:预先根据统计需求制定埋点列表,埋点列表中包括需统计生命周期状态信息的Activity的名称;以及将拦截到的Activity的生命周期状态信息与埋点列表进行对比,若拦截到的Activity生命周期状态信息对应的Activity名称存在于埋点列表中,则保存所述埋点日志,否则不予保存。这样做的目的是判断要采集哪些页面的埋点信息。如果用户只想统计个别页面的埋点情况,比如某个特定流程的页面,则可以梳理出待埋点页面的埋点列表。例如可以是提供一个包含页面Activity名称的列表,则在对拦截到的Activity的生命周期状态信息作进一步处理时,判断拦截到的页面的Activity名称是否在这个列表范围内,如果存在,则记录埋点日志信息,如果不存在,则不做处理。
此外,本发明实施例中,测试是否存在漏埋、错埋也十分方便。最终将采集到的日志通过SDK上报至指定域名的日志服务器下。即安卓应用在接入SDK完成后,可以使用封装了SDK的安卓应用进行操作,此时就可以有日志产生并上报,工作人员可以通过比对上报的埋点日志验证埋点是否成功,及上报的信息是否正确。若有漏埋或错埋则及时进行更新埋点列表等操作。
图3是根据本发明实施例的统计安卓应用页面浏览行为的方法的原理的示意图。
如图3所示,本发明实施例的统计安卓应用页面浏览行为的方法的实现原理如下:
1)Activity是安卓应用的组件之一,用于展示页面窗口。安卓应用的页面以Activity为载体实现,Activity的生命周期分为onCreate、onStart、onResume、onPause、onStop和onDestroy,一个页面的展示和消失都需要经过这几个阶段,通过监控Activity的生命周期,就可以监控一个页面的打开、关闭以及用户在页面上停留的时间;
2)创建基类BaseActivity重写Activity的所有的生命周期,实现页面监控。具体实施为:创建一个界面基类BaseActivity,让所有页面Activity都去继承它,然后在基类中重写所有Activity的生命周期方法,从而监控所有Activity的生命周期信息;
3)在基类BaseActivity中的重写方法里对Activity的生命周期状态信息做拦截。可以通过基类中的重写方法对页面Activity的状态进行标记。页面在运行过程中,Activity继承并调用基类BaseActivity的重写方法,按照一定格式将页面状态信息进行记录并拦截。拦截到的页面信息内容可以包括各页面Activity的名称、状态,及状态生效的时间等;
4)将拦截到的信息通过广播Broadcast发送到处理单元进行处理,生成埋点日志。在安卓系统中,Broadcast是一种广泛运用的在应用中传输信息的机制,可以根据安卓系统提供的方式注册广播并发送广播,将拦截到的消息发送至统一的处理模块进行处理,生成埋点日志;
5)实现页面埋点的可定制化。应用研发时可按照一定格式制定一个埋点列表,在处理广播发送过来的埋点信息时,与埋点列表进行比对,判断是否是需要的信息,如果是,就将其记录;如果不是,就不做处理;
6)分析这些日志信息,就可以统计出一个应用中各个页面的启动次数及访问时长等信息。
根据本发明实施例的统计安卓应用页面浏览行为的方法可以看出,通过基于监控所有页面的Activity生命周期实现对安卓应用页面浏览行为的统计,从而可以实现无需逐页面调用SDK上报接口实现页面埋点数据采集,使得埋点难度及复杂性降低;此外,亦无需人工手动进行页面埋点代码部署,实现页面埋点自动化,使人工投入成本降低;通过制定埋点列表,从而可以实现页面埋点定制处理,从而有利于降低研发维护成本,提升埋点效率,且后期测试不用担心埋点出现漏传参数、误传参数现象,测试投入成本降低;通过获取与Activity生命周期状态信息相关的信息以及设备、网络环境、地理位置等信息,一并生成埋点日志,从而方便统计分析人员对页面浏览行为进行高效的统计。
图4是跟本发明实施例的统计安卓应用页面浏览行为的装置的主要模块的示意图。
如图4所示,本发明的一种统计安卓应用页面浏览行为的装置40包括:重写模块401、继承模块402、处理模块403,其中,
重写模块401用于创建基类BaseActivity,在所述基类BaseActivity中对Activity生命周期方法进行重写,以实现对Activity的生命周期状态信息的拦截;继承模块402用于页面运行过程中,由于Activity继承基类BaseActivity,基类BaseActivity实现对Activity生命周期状态信息的拦截;处理模块403用于对拦截到的Activity的生命周期状态信息进行处理,生成埋点日志并保存。
其中,处理模块403还可用于:将拦截到的Activity的生命周期状态信息通过广播的方式发送至处理单元;处理单元根据统计需求,筛选需要记录的Activity的生命周期状态信息,并获取与所述Activity的生命周期状态信息相关的信息,所述信息包括采集页面Activity名称、状态生效时间信息,生成埋点日志并保存。
此外,处理模块403还可用于:获取设备类型、网络环境、地理位置信息,与基类BaseActivity拦截到的Activity的生命周期状态信息一并生成JSON格式的埋点日志并保存。
本发明实施例中,处理模块403还可用于:预先根据统计需求制定埋点列表,所述埋点列表中包括需统计生命周期状态信息的Activity的名称;以及将拦截到的Activity的生命周期状态信息与所述埋点列表进行对比,若拦截到的Activity生命周期状态信息对应的Activity名称存在于所述埋点列表,则保存所述埋点日志,否则不予保存。
图5是跟本发明实施例的统计安卓应用页面浏览行为的系统的主要部分的示意图。
如图5所示,本发明的一种统计安卓应用页面浏览行为的系统50包括存储器501和处理器502,其中:存储器501存储指令;处理器502被配置为根据所述指令执行下列步骤:创建基类BaseActivity,在所述基类BaseActivity中对Activity生命周期方法进行重写,以实现对Activity的生命周期状态信息的拦截;页面运行过程中,由于Activity继承基类BaseActivity,基类BaseActivity实现对Activity生命周期状态信息的拦截;对拦截到的Activity的生命周期状态信息进行处理,生成埋点日志并保存。
从以上描述可以看出,通过基于监控所有页面的Activity生命周期实现对安卓应用页面浏览行为的统计,从而可以实现无需逐页面调用SDK上报接口实现页面埋点数据采集,使得埋点难度及复杂性降低;此外,亦无需人工手动进行页面埋点代码部署,实现页面埋点自动化,使人工投入成本降低;通过制定埋点列表,从而可以实现页面埋点定制处理,从而有利于降低研发维护成本,提升埋点效率,且后期测试不用担心埋点出现漏传参数、误传参数现象,测试投入成本降低;通过获取与Activity生命周期状态信息相关的信息以及设备、网络环境、地理位置等信息,一并生成埋点日志,从而方便统计分析人员对页面浏览行为进行高效的统计。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (9)
1.一种统计安卓应用页面浏览行为的方法,其特征在于,包括:
创建基类BaseActivity,在所述基类BaseActivity中对Activity生命周期方法进行重写,以实现对Activity的生命周期状态信息的拦截;重写是在函数里加标记,使得Activity在执行时,能够对各个状态进行打标和记录;
页面运行过程中,由于Activity继承基类BaseActivity,基类BaseActivity实现对Activity生命周期状态信息的拦截;
对拦截到的Activity的生命周期状态信息进行处理,生成埋点日志并保存;
预先根据统计需求制定埋点列表,所述埋点列表中包括需统计生命周期状态信息的Activity的名称;以及
将拦截到的Activity的生命周期状态信息与所述埋点列表进行对比,若拦截到的Activity生命周期状态信息对应的Activity名称存在于所述埋点列表,则保存所述埋点日志,否则不予保存;
将采集到的日志通过SDK上报,比对上报的日志验证埋点是否成功,及上报的信息是否正确,若有漏埋或错埋,则更新埋点列表。
2.根据权利要求1所述的方法,其特征在于,对拦截到的Activity的生命周期状态信息进行处理,生成埋点日志并保存还包括:
将拦截到的Activity的生命周期状态信息通过广播的方式发送至处理单元;
处理单元根据统计需求,筛选需要记录的Activity的生命周期状态信息,并获取与所述Activity的生命周期状态信息相关的信息,所述信息包括采集页面Activity名称、状态生效时间信息,生成埋点日志并保存。
3.根据权利要求1所述的方法,其特征在于,对拦截到的Activity的生命周期状态信息进行处理,生成埋点日志并保存还包括:获取设备类型、网络环境、地理位置信息,与基类BaseActivity拦截到的Activity的生命周期状态信息一并生成JSON格式的埋点日志并保存。
4.一种统计安卓应用页面浏览行为的装置,其特征在于,包括:
重写模块,用于创建基类BaseActivity,在所述基类BaseActivity中对Activity生命周期方法进行重写,以实现对Activity的生命周期状态信息的拦截;重写是在函数里加标记,使得Activity在执行时,能够对各个状态进行打标和记录;
继承模块,用于页面运行过程中,由于Activity继承基类BaseAct ivity,基类BaseActivity实现对Activity生命周期状态信息的拦截;
处理模块,用于对拦截到的Activity的生命周期状态信息进行处理,生成埋点日志并保存;
所述处理模块还用于:
预先根据统计需求制定埋点列表,所述埋点列表中包括需统计生命周期状态信息的Activity的名称;以及
将拦截到的Activity的生命周期状态信息与所述埋点列表进行对比,若拦截到的Activity生命周期状态信息对应的Activity名称存在于所述埋点列表,则保存所述埋点日志,否则不予保存;
将采集到的日志通过SDK上报,比对上报的日志验证埋点是否成功,及上报的信息是否正确,若有漏埋或错埋,则更新埋点列表。
5.根据权利要求4所述的装置,其特征在于,所述处理模块还用于:
将拦截到的Activity的生命周期状态信息通过广播的方式发送至处理单元;
处理单元根据统计需求,筛选需要记录的Activity的生命周期状态信息,并获取与所述Activity的生命周期状态信息相关的信息,所述信息包括采集页面Activity名称、状态生效时间信息,生成埋点日志并保存。
6.根据权利要求4所述的装置,其特征在于,所述处理模块还用于:获取设备类型、网络环境、地理位置信息,与基类BaseActivity拦截到的Activity的生命周期状态信息一并生成JSON格式的埋点日志并保存。
7.一种统计安卓应用页面浏览行为的系统,其特征在于,包括存储器和处理器,其中:
所述存储器存储指令;
所述处理器被配置为根据所述指令执行下列步骤:
创建基类BaseActivity,在所述基类BaseActivity中对Activity生命周期方法进行重写,以实现对Activity的生命周期状态信息的拦截;重写是在函数里加标记,使得Activity在执行时,能够对各个状态进行打标和记录;
页面运行过程中,由于Activity继承基类BaseActivity,基类BaseActivity实现对Activity生命周期状态信息的拦截;
对拦截到的Activity的生命周期状态信息进行处理,生成埋点日志并保存;
预先根据统计需求制定埋点列表,所述埋点列表中包括需统计生命周期状态信息的Activity的名称;以及
将拦截到的Activity的生命周期状态信息与所述埋点列表进行对比,若拦截到的Activity生命周期状态信息对应的Activity名称存在于所述埋点列表,则保存所述埋点日志,否则不予保存;
将采集到的日志通过SDK上报,比对上报的日志验证埋点是否成功,及上报的信息是否正确,若有漏埋或错埋,则更新埋点列表。
8.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-3中任一所述的方法。
9.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-3中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610854031.2A CN107870933B (zh) | 2016-09-27 | 2016-09-27 | 统计安卓应用页面浏览行为的方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610854031.2A CN107870933B (zh) | 2016-09-27 | 2016-09-27 | 统计安卓应用页面浏览行为的方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107870933A CN107870933A (zh) | 2018-04-03 |
CN107870933B true CN107870933B (zh) | 2020-09-29 |
Family
ID=61752261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610854031.2A Active CN107870933B (zh) | 2016-09-27 | 2016-09-27 | 统计安卓应用页面浏览行为的方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107870933B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108845918A (zh) * | 2018-04-28 | 2018-11-20 | 努比亚技术有限公司 | 一种信息采集方法、终端及计算机可读存储介质 |
CN109684863B (zh) * | 2018-09-07 | 2024-01-19 | 平安科技(深圳)有限公司 | 数据防泄漏方法、装置、设备及存储介质 |
CN111382380A (zh) * | 2018-12-27 | 2020-07-07 | 北京奇虎科技有限公司 | 一种页面访问时长的统计方法和装置 |
CN109636490A (zh) * | 2019-01-25 | 2019-04-16 | 上海基分文化传播有限公司 | 广告转化率的实时预测方法、广告评价方法与系统 |
CN110046317A (zh) * | 2019-03-13 | 2019-07-23 | 平安城市建设科技(深圳)有限公司 | Ios应用的页面信息记录方法、终端及存储介质 |
CN110163654B (zh) * | 2019-04-15 | 2021-09-17 | 上海趣蕴网络科技有限公司 | 一种广告投放数据追踪方法和系统 |
CN110221954A (zh) * | 2019-05-29 | 2019-09-10 | 吉旗(成都)科技有限公司 | 移动终端应用程序页面性能监控方法及装置 |
CN111639007B (zh) * | 2020-05-29 | 2024-05-03 | 北京金山云网络技术有限公司 | 一种数据处理方法、装置、终端及计算机可读存储介质 |
CN111858282B (zh) * | 2020-07-23 | 2022-11-04 | 平安普惠企业管理有限公司 | 页面轨迹记录方法及相关设备 |
CN112506492B (zh) * | 2020-09-02 | 2024-05-14 | 上海赛可出行科技服务有限公司 | 一种支持动态场景配置的可视化埋点方法 |
CN112153471B (zh) * | 2020-09-25 | 2023-01-24 | 四川封面传媒有限责任公司 | 视频的播放控制方法、装置及存储介质 |
CN112463518A (zh) * | 2020-11-05 | 2021-03-09 | 广州博恒信息科技有限责任公司 | 基于Flutter的页面全生命周期监控方法、装置、设备及存储介质 |
CN112363870B (zh) * | 2020-11-20 | 2022-07-29 | 广州太平洋电脑信息咨询有限公司 | 应用程序开发处理方法、装置、计算机设备和存储介质 |
CN112702647B (zh) * | 2020-12-24 | 2023-05-02 | 深圳市酷开网络科技股份有限公司 | 一种播放控制方法、智能电视及计算机可读存储介质 |
CN112799927A (zh) * | 2021-01-28 | 2021-05-14 | 中国工商银行股份有限公司 | 前端用户的操作行为信息采集方法及装置 |
CN112860455B (zh) * | 2021-02-08 | 2023-07-21 | 北京百度网讯科技有限公司 | 一种生命周期事件处理方法、装置及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105550184A (zh) * | 2014-10-31 | 2016-05-04 | 阿里巴巴集团控股有限公司 | 一种信息获取方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8244745B2 (en) * | 2005-12-29 | 2012-08-14 | Nextlabs, Inc. | Analyzing usage information of an information management system |
US7487171B2 (en) * | 2005-12-30 | 2009-02-03 | International Business Machines Corporation | System and method for managing a hierarchy of databases |
US20090319608A1 (en) * | 2008-06-23 | 2009-12-24 | Microsoft Corporation | Automated task centered collaboration |
CN105260290A (zh) * | 2015-09-28 | 2016-01-20 | 北京奇虎科技有限公司 | 应用异常信息收集方法和装置 |
-
2016
- 2016-09-27 CN CN201610854031.2A patent/CN107870933B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105550184A (zh) * | 2014-10-31 | 2016-05-04 | 阿里巴巴集团控股有限公司 | 一种信息获取方法及装置 |
Non-Patent Citations (1)
Title |
---|
Android应用--自动化埋点;stayfish;《https://blog.csdn.net/stayfish/article/details/32330451》;20140619;第1-10页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107870933A (zh) | 2018-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107870933B (zh) | 统计安卓应用页面浏览行为的方法、装置及系统 | |
CN103186740B (zh) | 一种Android恶意软件的自动化检测方法 | |
CN105553769B (zh) | 一种数据采集分析系统和方法 | |
CN106649063B (zh) | 用于监测程序运行时耗时数据的方法及系统 | |
CN104407980B (zh) | 移动应用自动化测试装置和方法 | |
CN105094783B (zh) | 安卓应用稳定性测试的方法及装置 | |
CN109446069A (zh) | 兼容性测试方法、装置、计算机设备和介质 | |
CN110244991B (zh) | 一种微服务依赖分析方法及装置 | |
CN109302522A (zh) | 测试方法、装置以及计算机系统和介质 | |
CN106681913A (zh) | 一种应用卡顿定位系统及方法 | |
CN107894889A (zh) | 埋点方法、设备及计算机可读存储介质 | |
CN104391795A (zh) | 一种分布式系统中自动化测试覆盖率的测试方法及系统 | |
CN108304704A (zh) | 权限控制方法、装置、计算机设备和存储介质 | |
CN114978940B (zh) | 链路监控及告警方法、装置、计算机设备和存储介质 | |
CN108984203A (zh) | 一种用于Android应用运行时数据采集的方法及其系统 | |
CN109460307A (zh) | 基于日志埋点的微服务调用跟踪方法及其系统 | |
CN105653946A (zh) | 基于组合事件行为触发的Android恶意行为检测系统及其检测方法 | |
KR20160070410A (ko) | 스마트기기용 어플리케이션의 테스트 시스템 및 그 방법 | |
CN109684219A (zh) | 系统性能测试方法、装置及存储介质 | |
CN103312851A (zh) | 一种智能手机应用交互界面程序可用性测试方法 | |
CN109710440A (zh) | 网页前端的异常处理方法、装置、存储介质及终端设备 | |
CN106778264A (zh) | 一种移动客户端的应用程序分析方法及分析系统 | |
CN112364267B (zh) | 前端数据的采集方法及装置 | |
CN105574150A (zh) | 一种数据处理方法和装置 | |
CN112148606B (zh) | 埋点测试方法、装置、设备及计算机可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |