一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

行为数据采集方法、系统与流程

2022-04-30 08:47:55 来源:中国专利 TAG:


1.本发明涉及用户行为数据采集领域,尤其涉及一种行为数据采集方法、系统。


背景技术:

2.随着移动互联网的发展,互联网产品之间的竞争越来越大,基于用户行为分析来优化自己的产品显得越来越重要,用户的行为分析是基于用户的行为数据为基础的,因此产品的优化和用户行为数据采集和分析密不可分。用户行为数据可以为产品的优化和营销提交有效的指导方向。用户行为数据从产生到使用过程主要包括数据收集、数据上报、数据分析三个阶段。其中数据采集俗称埋点,是整个过程的基础。
3.当前市场上数据采集方式主要是代码埋点。代码埋点,是需要在项目代码中触发事件的场景处编写数据采集代码,当事件触发时,会同时执行埋点代码,进行数据上报。该埋点方式由于是针对每个事件手动添加的埋点代码,工作量大,并且如果不熟悉产品业务场景,很容易出现错埋和漏埋的情况;此外每次更新代码都需要重新发包,导致埋点不够实时性。该埋点方式都只能采集已埋点控件的行为数据,对于未埋点控件的数据是无法采集的,会导致用户行为数据采集不全,存在历史用户行为数据会无法追溯的问题。


技术实现要素:

4.为了克服现有技术的不足,本发明提出一种行为数据采集方法、系统,利用上位机生成和同步用户行为数据采集所需的配置信息,基于底层原理监听用户在界面展示终端上的行为事件,并根据该行为事件与配置信息的匹配结果采取相应的数据上报方式,减少了数据采集工作量,降低成本、提升效率,并且能够实现对行为数据的全面、实时采集,提高了历史用户行为数据的可追溯性。
5.为解决上述问题,本发明采用的一个技术方案为:一种行为数据采集方法,所述行为数据采集方法应用于界面展示终端,行为数据采集装置集成在所述界面展示终端展示的系统中,所述行为数据采集方法包括:s101:行为数据采集装置与上位机连接并进行信息同步,并接收所述上位机根据同步的信息生成的配置信息,所述配置信息包括页面配置信息、控件配置信息;s102:行为数据采集装置采集并上报程序启动事件,通过所述界面展示终端的底层监听预设事件的触发,判断是否存在与监听到的所述预设事件匹配的配置信息,所述预设事件包括页面事件、控件事件,若是,则执行s103,若否,则执行s104;s103:根据匹配的配置信息进行数据上报;s104:根据所述预设事件的信息进行数据上报。
6.进一步地,所述行为数据采集装置与上位机连接并进行信息同步的步骤之前包括:所述系统在初始化时部分调用行为数据采集装置提供的接口以启用所述行为数据采集装置并对所述行为数据采集装置进行初始化。
7.进一步地,所述行为数据采集装置与上位机连接并进行数据同步的步骤具体包括:行为数据采集装置与所述上位机建立可视化连接,并向所述上位机同步界面展示终端的当前页面信息以及控件信息。
8.进一步地,所述上位机根据同步的当前页面信息、空间信息设置当前页面的名称、可点击控件的事件名称,基于设置结果生成配置信息,其中,所述上位机以页面路径为所述页面配置信息的标识,以控件路径为所述控件配置信息的标识。
9.进一步地,所述行为数据采集装置采集并上报程序启动事件的步骤具体包括:在程序冷启动时初始化埋点信息,并在调用初始化接口时上报程序启动事件。
10.进一步地,所述页面事件包括页面浏览事件、页面停留事件,所述控件事件包括控件点击事件。
11.进一步地,所述判断是否存在与监听到的所述预设事件匹配的配置信息的步骤具体包括:监听到所述预设事件的触发后,执行监听回调上报,并在监听回调上报中基于所述配置信息的标识与所述预设事件的配置的匹配结果判断是否存在与所述预设事件匹配的配置信息。
12.进一步地,所述根据匹配的配置信息进行数据上报的步骤具体包括:将匹配到的所述配置信息中的名称确定为所述预设事件的名称,基于所述名称进行数据上报。
13.进一步地,数据上报的步骤具体包括:获取所述预设事件的相关信息,组装所述相关信息,并将组装后的所述相关信息上报给指定设备,所述相关信息包括预设事件信息、设备信息。
14.基于相同的发明构思,本发明还提出一种行为数据采集系统,所述行为数据采集系统包括行为数据采集装置、上位机、日志服务器,所述行为数据采集装置分别与所述上位机、日志服务器连接,所述上位机与所述行为数据采集装置连接,并根据所述行为数据采集装置同步的信息生成配置信息;所述日志服务器存储所述行为数据采集装置上报的数据;所述行为数据采集装置包括如上所述的行为数据采集方法。
15.相比现有技术,本发明的有益效果在于:利用上位机生成和同步用户行为数据采集所需的配置信息,基于底层原理监听用户在界面展示终端上的行为事件,并根据该行为事件与配置信息的匹配结果采取相应的数据上报方式,减少了数据采集工作量,降低成本、提升效率,并且能够实现对行为数据的全面、实时采集,提高了历史用户行为数据的可追溯性。
附图说明
16.图1为本发明行为数据采集方法一实施例的流程图;
17.图2为本发明行为数据采集方法中与上位机建立连接一实施例的流程图;
18.图3为本发明行为数据采集方法中android字节码插桩一实施例的原理图;
19.图4为本发明行为数据采集系统一实施例的结构图。
具体实施方式
20.以下通过特定的具体实例说明本技术的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本技术的其他优点与功效。本技术还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本技术的精神下进行各种修饰或改变。需说明的是,通常在此处附图中描述和示出的各本公开实施例在不冲突的前提下,可相互组合,其中的结构部件或功能模块可以以各种不同
的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
21.在本技术公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
22.请参阅图1-3,其中,图1为本发明行为数据采集方法一实施例的流程图;
23.图2为本发明行为数据采集方法中与上位机建立连接一实施例的流程图;图3为本发明行为数据采集方法中android字节码插桩一实施例的原理图。结合附图1-3对本发明行为数据采集方法作详细说明。
24.在本实施例中,执行行为数据采集方法的设备为界面展示终端,其中,该界面展示终端包括智能手机、智能手表、智能眼镜、智能手环以及其他能够在底层监听事件触发的智能设备。
25.用于进行行为数据采集的行为数据采集装置集成在界面展示终端展示的系统中。其中,对界面显示终端的系统进行开发时将行为数据采集装置以软件或硬件的形式集成在该系统中,并且系统在初始化时部分调用行为数据采集装置提供的接口以启用行为数据采集装置和对行为数据采集装置进行初始化。
26.在本实施例中,行为数据采集方法包括:
27.s101:行为数据采集装置与上位机连接并进行信息同步,并接收上位机根据同步的信息生成的配置信息,所述配置信息包括页面配置信息、控件配置信息。
28.行为数据采集装置与上位机之间建立数据连接,在连接后向上位机传输界面展示终端的页面信息,上位机接收该页面信息,并对页面信息中的页面、空间进行可视化圈选配置,生成配置信息,将配置信息同步给行为数据采集装置以供行为数据采集装置的页面事件、控件事件使用。
29.其中,行为数据采集装置与上位机连接并进行数据同步的步骤具体包括:与上位机建立可视化连接,并向上位机同步界面展示终端的当前页面信息以及控件信息。
30.上位机生成配置信息的步骤包括:上位机根据同步的当前页面信息、空间信息设置当前页面的名称可点击控件的事件名称,基于设置结果生成配置信息,其中,上位机以页面路径为页面配置信息的标识,以控件路径为控件配置信息的标识。
31.在一个具体的实施例中,上位机为pc,pc端的埋点系统和手机端app基于websocket建立可视化连接,同时手机端app实时同步手机上当前页面的截图、页面路径、页面名称、控件路径、控件尺寸等信息到pc端,在pc端基于上述信息渲染出当前页面,此时可以对当前页面的名称进行设置,以及对可点击控件的事件名称进行设置,并实时生成一份配置信息,其中页面配置信息以页面路径作为唯一标识,控件配置信息以控件路径作为唯一标识。
32.pc端的埋点系统和手机端app基于websocket建立可视化连接的步骤包括:埋点前端web页面和集成了埋点sdk的app与服务器连接都是基于websocket的,并且这两个连接最
终会建立一个一对一的对应关系。具体流程如下图。1)埋点人员打开埋点web页面,页面与服务器建立连接。2)打开手机app(埋点的sdk),扫码二维码建立与服务器websocket连接。3)pc端通过websocket连接请求该手机的设备信息。4)手机收到服务器的请求后获取对应的设备信息,然后通过websocket上报设备信息到服务器。5)服务器收到设备的信息后发送到pc端的web页面进行显示。6)pc端通过websocket连接请求手机上的app页面信息和截图。7)手机收到服务器的请求后获取当前页面信息和截图,然后通过websocket上报设备信息到服务器。8)服务器收到页面信息和截图后发送到pc端的web页面进行显示。实现手机页面和pc的实时同步。建立可视化连接后,埋点人员在pc端就可以对页面进行可视化埋点。在当前页面上,设置当前页面名称,并生成一条页面配置信息;圈选可点击的控件设置事件名称,生成一条控件配置信息。
33.s102:行为数据采集装置采集并上报程序启动事件,通过界面展示终端的底层监听预设事件的触发,判断是否存在与监听到的预设事件匹配的配置信息,预设事件包括页面事件、控件事件,若是,则执行s103,若否,则执行s104。
34.行为数据采集装置接收同步的配置信息后,进行程序启动事件的采集和上报,并通过底层监听的方式监听页面事件、控件事件的触发。在检测到上述事件被触发后,判断被触发的事件是否匹配到相应的配置信息。其中,页面事件包括页面浏览事件、页面停留事件,控件事件包括控件点击事件。
35.采集并上报程序启动事件的步骤具体包括:在程序冷启动时初始化埋点信息,并在调用初始化接口时上报程序启动事件。
36.判断是否存在与监听到的预设事件匹配的配置信息的步骤具体包括:监听到预设事件的触发后,执行监听回调上报,并在监听回调上报中基于配置信息的标识与预设事件的配置的匹配结果判断是否存在与预设事件匹配的配置信息。
37.在上述实施例中,行为数据采集装置基于android或ios的底层原理进行预设事件的监听。在其他实施例中,行为数据采集装置也可以安装其他能够监听预设事件的触发的系统。
38.具体的,对于页面事件,行为数据采集装置基于android和ios的底层原理,监听页面进入和页面事件的触发。当用户进行页面切换时,会在监听回调中执行页面浏览或页面停留事件触发,匹配可视化生成的页面配置信息,根据页面配置信息进行数据上报,若没匹配到,就以默认的信息进行上报。
39.对于控件事件,行为数据采集装置基于android和ios的底层原理进行监听,当用户触发控件的点击事件时,会触发监听回调处理控件点击事件的触发,匹配可视化生成的控件配置信息,根据配置信息进行点击事件上报,若没匹配到,就以默认的信息进行上报,从而可以全量采集所有控件的点击事件。
40.其中,在系统为android系统时,行为数据采集装置基于gradle transform asm技术实现全量行为数据采集。从android的打包流程可知:java-》class(操作字节)-》dex,在app打包成.dex文件之前的编译过程中操作class文件。利用gradle transform api,去遍历每个class字节码文件的所有方法,然后使用asm字节码框架进行修改,最后再对原文件进行替换,即可达到插入代码的目的。当用户行为事件触发时,限制性出入的代码,在插入的代码中会上报当前行为事件,插入代码执行完毕后,执行事件本身代码。
41.在系统为ios系统时,通过基于底层的运行时机制的method swizzling(俗称黑魔法,方法替换)实现全量行为数据采集。method swizzing是发生在运行时的,主要用于在运行时将两个method(方法)进行交换,可以将method swizzling代码写到任何地方,但是只有在这段method swilzzling代码执行完毕之后互换才起作用。每一个oc实例对象都保存有isa指针和实例变量,其中isa指针所属类,类维护一个运行时可接收的方法列表(methodlists);方法列表(methodlists)中保存selector的方法名和该方法实现的imp(imp,指向method实现的指针)映射关系。在运行时,通过selecter找到匹配的imp,从而找到具体的实现函数,替换selector对应的方法实现imp,达到提供hook的目的。基于该原理可替换用户行为方法和事件统计方法,当用户触发用户行为方法时,会同时触发事件统计方法,将事件上报。
42.s103:根据匹配的配置信息进行数据上报。
43.在确定触发的预设事件存在匹配的配置信息后,行为数据采集装置将匹配到的配置信息中的名称确定为预设事件的名称,基于该名称进行数据上报。
44.s104:根据预设事件的信息进行数据上报。
45.在上述实施例中,数据上报的步骤具体包括:获取预设事件的相关信息,组装相关信息,并将组装后的相关信息上报给指定设备,相关信息包括预设事件信息、设备信息。
46.在一个具体的实施例中,页面的浏览和停留事件采集,具体包括:1)页面的唯一性,android端页面将activity或fragment的类名作为页面唯一标识,ios端将页面的controller类作为页面唯一标识;2)基于页面的生命周期中页面浏览和页面停留两个事件,通过android和ios的底层原理,监听这两个事件的触发,在监听回调中上报当前事件,其中页面浏览事件会记录本次浏览的时间,页面停留事件会计算本次页面停留的时间。当用户进行页面切换时,会通过监听回调执行事件上报逻辑;3)在浏览和停留事件上报逻辑中会基于页面路径去页面配置信息中匹配当前页面的配置,获取可视化设置的页面名称,若未匹配到表示该页面未进行可视化配置,会获取默认的页面名称,最终将获取到的页面名称信息合并到待上报的信息中统一上报上数据网关。
47.在另一个具体的实施例中,控件的点击事件采集,具体包括:1)控件的唯一性。android和ios端页面信息都是基于window为根容器的树状结构,每个控件都是可能含有父控件,子控件和兄弟控件,因此从控件本身开始,不断往上遍历父控件,直到最终父控件为window结束,可以获取从当前控件开始到window所有节点信息,且由于每个节点可能含有兄弟控件,因此每个节点都含有对应的索引,将所有含有索引的节点拼接起来就是当前控件的完整路径。2)控件点击事件捕捉。其中android端基于底层的字节码插桩技术实现对每个控件点击事件的监听;ios端基于底层runtime的method swizzling技术实现对每个控件的点击事件监听。当用户触发控件的点击事件时,会触发监听回调处理事件上报逻辑。3)在控件的点击事件上报逻辑中会基于控件的路径去控件配置信息中匹配当前点击控件的配置,获取配置的控件事件名称,若未匹配到将控件的文本作为事件名称,最终将事件名称合并到待上报的信息中统一上报上数据网关
48.在一个具体的实施例中,行为数据采集装置的每条事件产生后会生成一个由事件名称,页面名称等事件属性组成的json数据,同时行为数据采集装置的埋点sdk内部会自动采集设备相关相信,比如系统版本,设备品牌、应用版本等基础信息,并添加到json数据中,
最后以按照特定的数据组装规则,将数据上报到日志服务器。
49.有益效果:本发明行为数据采集方法利用上位机生成和同步用户行为数据采集所需的配置信息,基于底层原理监听用户在行为数据采集装置上的行为事件,并根据该行为事件与配置信息的匹配结果采取相应的数据上报方式,减少了数据采集工作量,降低成本、提升效率,并且能够实现对行为数据的全面、实时采集,提高了历史用户行为数据的可追溯性。
50.基于相同的发明构思,本发明还提出一种行为数据采集系统,请参阅图4,图4为本发明行为数据采集系统一实施例的结构图,结合图4对本发明的行为数据采集系统进行说明。
51.在本实施例中,行为数据采集系统包括行为数据采集装置、上位机、日志服务器,行为数据采集装置分别与上位机、日志服务器连接,上位机与行为数据采集装置连接,并根据行为数据采集装置同步的信息生成配置信息;日志服务器存储行为数据采集装置上报的数据;行为数据采集装置包括如上述实施例所述的行为数据采集方法。
52.以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
53.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以作出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的专利保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献