CN114911705A - 基于sdk的埋点处理方法、电子设备及存储介质 - Google Patents
基于sdk的埋点处理方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114911705A CN114911705A CN202210552052.4A CN202210552052A CN114911705A CN 114911705 A CN114911705 A CN 114911705A CN 202210552052 A CN202210552052 A CN 202210552052A CN 114911705 A CN114911705 A CN 114911705A
- Authority
- CN
- China
- Prior art keywords
- page
- sdk
- point
- user
- service
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3624—Software debugging by performing operations on the source code, e.g. via a compiler
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephonic Communication Services (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于SDK的埋点处理方法、电子设备及存储介质,方法包括:根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及埋点对应的业务参数;其中,公共参数包括页面信息、用户信息和/或应用信息;将公共参数以及业务参数传递给SDK的上报接口,由上报接口建立上报通道,上报公共参数以及业务参数给埋点服务器。基于SDK进行埋点处理,将埋点处理流程划分为不同接口处理,与现有的业务解耦合,各个接口独立处理,提升代码的可维护性和开发效率。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种基于SDK的埋点处理方法、电子设备及存储介质。
背景技术
埋点是对事件进行追踪,针对特定用户行为或者事件进行捕获,从而可以实现对用户行为数据的收集等。埋点一般针对具体的业务,如某个页面的某个按钮等,需要针对性的为其植入相关代码,来收集用户如点击按钮操作后产生的各种数据。
现有技术在设置埋点时,需要为每一个埋点编写对应的代码,代码与各自业务紧耦合,导致埋点的代码无法复用,代码量庞大,开发效率低,可维护性差。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的基于SDK的埋点处理方法、电子设备及存储介质。
根据本发明的一个方面,提供了一种基于SDK的埋点处理方法,其包括:
根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及埋点对应的业务参数;其中,公共参数包括页面信息、用户信息和/或应用信息;
将公共参数以及业务参数传递给SDK的上报接口,由上报接口建立上报通道,上报公共参数以及业务参数给埋点服务器。
根据本发明的另一方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;
存储器用于存放至少一可执行指令,可执行指令使处理器执行以下操作:
根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及埋点对应的业务参数;其中,公共参数包括页面信息、用户信息和/或应用信息;
将公共参数以及业务参数传递给SDK的上报接口,由上报接口建立上报通道,上报公共参数以及业务参数给埋点服务器。
根据本发明的又一方面,提供了一种计算机存储介质,存储介质中存储有至少一可执行指令,可执行指令使处理器执行上述任一项的基于SDK的埋点处理方法对应的操作。
根据本发明提供的基于SDK的埋点处理方法、电子设备及存储介质,基于SDK进行埋点处理,将埋点处理流程划分为不同接口处理,与现有的业务解耦合,各个接口独立处理,提升代码的可维护性和开发效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的基于SDK的埋点处理方法的流程示意图;
图2示出了根据本发明另一个实施例的基于SDK的埋点处理方法的流程示意图;
图3a示出了各个事件处理流程示意图;
图3b示出了SDK各个接口的架构图。
图4示出了根据本发明一个实施例的一种电子设备的结构示意图。
具体实施方式
实施例一
图1示出了根据本发明一个实施例的基于SDK的埋点处理方法的流程示意图,如图1所示,该方法包括如下步骤:
步骤S101,根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及埋点对应的业务参数。
本实施例中是将埋点的相关处理封装为SDK,与业务间切分开来,实现与业务解耦合。SDK(Software Development Kit,软件开发工具包)预先将埋点的处理分为多个不同处理层,每个处理层分别处理如参数采集、上报等不同功能,每个处理层提供接口API,可以适用于各种业务的埋点,提升代码可维护性、复用性,提高代码开发效率。
页面可以基于各个预设场景进行埋点,当用户的操作触发预设场景埋点时,由SDK的采集接口对接触发的埋点来采集公共参数以及触发的埋点对应的业务参数,无需如现有技术针对每个埋点均需要为其撰写单独的代码,且无法复用至其它埋点。页面在埋点时,预设场景埋点可以直接挂载于页面元素,如下所示:
<button v-log-click="{content:'点击元素',contentId:itemId,contentType:itemType,contentNumber:itemNumber}">点击元素</button>
在button元素中,设置v-log-click,当用户点击button按钮时,触发埋点事件,对应的SDK的采集接口对埋点进行监听,来获取埋点需上报的各个参数。
预设场景包括如生命周期场景、元素点击场景、元素曝光场景、弹窗展示场景等。生命周期场景对应页面进入场景,元素点击场景如在页面中点击某一元素等;元素曝光场景如页面某一元素进入屏幕的展示范围等;弹窗展示场景如弹出框等场景。
页面中预先对预设场景进行对应的埋点,当用户操作触发某一预设场景埋点时,如根据用户打开页面即进入页面,对页面的生命周期场景埋点触发操作,基于SDK的采集接口可以获取公共参数,公共参数包括如页面信息、用户信息、应用信息等。页面信息包括如当前页面的页面标识、当前页面的页面类型、当前页面的页面key值、前一页面的页面标识、前一页面的页面类型、前一页面的页面key值等,可以确定当前页面以及当前页面访问路径等信息;用户信息包括如用户登录信息、用户会话信息(如sessionid)、用户行为信息(如设置一个自增长id,记录用户操作,根据用户每一次操作,自增长id加一)等;应用信息包括如应用id、应用版本等信息。这些公共参数可以适用于同一页面中,在同一页面的不同预设场景下均可使用相同的公共参数。在页面打开,SDK的采集接口在生命周期场景可以从页面中获取部分公共参数,如页面信息、用户信息等,还可以基于应用获取应用信息等,从缓存中获取用户信息的用户会话信息、用户自增长id等,具体获取方式、获取途径可以根据实施情况设置,此处不做限定。在采集接口获取到公共参数后,可以将公共参数存储,如存储在缓存中、存储在SDK的框架实例中等,方便后续同一页面的其它预设场景埋点在获取公共参数时可以直接获取存储的公共参数。采集接口除获取公共参数外,还获取埋点对应的业务参数。业务参数根据各个埋点具体的业务设置,此处不做限定。本实施例主要针对公共参数的获取,利用SDK的采集接口可以获取各个预设场景埋点的公共参数,极大地提升代码的复用性和可维护性。
对于元素点击场景,根据用户点击页面元素对页面的元素点击场景埋点的触发操作,基于SDK的采集接口监听到点击操作,对元素点击事件进行监听、注册,通过如钩子函数对元素点击的事件进行回调,获取公共参数,以及埋点对应的业务参数。进一步,在获取公共参数时,对于同一页面,若已经存在存储的公共参数,可以直接使用已经存储的公共参数。当用户点击页面元素,引起页面展示的数据更新时,如用户点击“点赞”按钮,“点赞”按钮从“未点赞”状态更新为“已点赞”状态,也可以通过钩子函数获取更新的业务参数等。
对于元素曝光场景,根据用户操作页面对页面的元素曝光场景埋点的触发操作,如用户划动或者滚动页面,使得页面中某一元素进入页面视窗,触发元素曝光场景的埋点。现有技术对于元素曝光场景埋点需要针对每个元素撰写对应的代码来判断该元素是否进入页面视窗,代码量较大。本实施例中均由SDK的采集接口来监听用户的页面操作,无需对每个元素撰写代码,大大降低代码撰写量。用户在操作页面时,SDK的采集接口根据用户的操作可以通过函数回调对元素进行判断,SDK的采集接口可以通过监听元素在页面中的位置数据,实时判断元素是否进入到页面视窗,当判断元素出现在页面视窗后,获取公共参数以及埋点对应的业务参数,方便后续上报。判断时,可以如对元素设置一个预设标识,当其进入页面视窗时,可以自动获取到预设标识,判断元素进入页面视窗,无需如现有技术计算元素何时进入页面视窗。进一步,在实施时,也会遇到如电子书的详情页面中已经展示某电子书封面,即电子书封面元素已经曝光,进入页面视窗,但电子书的相关推荐电子书信息等还没有展示,这些信息的获取与电子书封面的展示间存在一定的延迟,基于上述问题,在利用SDK的采集接口监听用户的页面操作时,还可以判断页面的元素是否需要延迟曝光,即当前虽然触发元素曝光埋点,但参数的上报还需要等待下一个周期,当判断页面的元素需要延迟曝光时,监听并基于元素在页面中的位置数据进行参数更新,直至确定元素曝光以及业务参数更新后,获取公共参数以及更新埋点对应的实时的业务参数(此处,元素延迟曝光可以多次判断,直至确定参数变化更新后再进行参数采集上报等)。如SDK的采集接口监听元素时,根据实时监听元素,对元素的业务参数是否更新等判断,确定元素曝光以及业务参数更新后,再获取公共参数以及更新后的埋点实时的业务参数,以供后续上报。在获取公共参数时,对于同一页面,若已经存在存储的公共参数,可以直接使用已经存储的公共参数。进一步,如页面中展示推广信息时,对于推广信息相关的业务参数如推广平台等,获取一次即可,无需重复获取。基于上述问题,可以根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,判断页面的元素是否需要多次上报;若否,可以对获取的埋点对应的业务参数进行去重处理,避免多次上报。对页面的监听还可以在确定上报后,进行如监听销毁处理,如设置其disconnect,不再继续监听,避免监听资源浪费等。
对于弹窗展示场景,根据用户操作弹窗页面对页面的弹窗展示场景埋点的触发操作,如用户点击某链接,在当前页面弹出对话框、选择框、子页面等弹窗页面时,触发弹窗展示场景埋点。基于SDK的采集接口可以监听弹窗页面的数据更新,如用户点击弹窗中的某元素、弹窗中元素随时间发生状态变化、弹窗中元素根据不同的数据(时间数据、用户数据、业务数据等)呈现不同的展示状态时,可以获取公共参数以及实时获取埋点对应的实时业务参数。
进一步,本实施例中考虑到不同版本的代码间衔接问题,除基于SDK的采集接口直接采集公共参数、业务参数外,还可以通过反向依赖注入的方式,如旧版本的代码中确定的公共参数与采集接口所需的公共参数类型不一致时,基于反向依赖注入方式对公共参数、业务参数进行调整得到采集接口所需的公共参数、业务参数,方便对老版本的代码的接入。SDK的采集接口在获取到公共参数、业务参数后,可以对公共参数、业务参数进行数据处理、再处理等,如对公共参数、业务参数进行序列化处理。获取的各个参数(包括公共参数、业务参数)可能从缓存、页面、应用等不同处获取、获取的各个参数格式可能存在不一致、获取的参数可能需要再计算(如自增长id等)等等,需要对各个参数的数据结构进行加工整理、将各个参数进行统一规范处理等,对其进行序列化处理,方便后续的上报、对公共参数、业务参数进行验证等,使得参数传输更规范化。
SDK的采集接口可以通过如bind等钩子函数完成对埋点的各个事件监听的注册,钩子函数获取数据,componentUpdate更新函数判断数据是否变化等,以上为举例说明,具体实施时根据实施情况采用对应的函数实现,此处不做限定。
步骤S102,将公共参数以及业务参数传递给SDK的上报接口,由上报接口建立上报通道,上报公共参数以及业务参数给埋点服务器。
在SDK的采集接口获取到公共参数、业务参数后,将其传递给SDK的上报接口,由上报接口来建立上报通道,通过上报通道将公共参数以及业务参数上报给埋点服务器,无需代码撰写与埋点服务器的连接。
进一步,上报通道还可以基于埋点的预设通道类型,为其建立对应的上报通道,提供不同类型的上报通道,以满足不同的代码需求。预设通道类型如可以基于版本区分、基于预设标识区分等,以不同版本为例,上报通道根据版本信息判断,为其确定对应的预设通道类型,从而确定要建立的上报通道,如第一上报通道、第二上报通道、XX上报通道等,以上为举例说明,具体可以根据实施情况设置,此处不做限定。基于不同预设通道类型,可以方便提供给不同代码上报通道。进一步,若某一上报通道停用时,只需修改代码对应的预设通道类型,即可继续连接其它上报通道继续上报,方便快捷,且修改工作量较少。对应的以上各个预设场景埋点触发后,SDK的采集接口采集各个参数、上报接口上报后,可以继续等待下一次的触发,再次触发后,继续采集参数完成上报等。
本实施例中将现有技术中业务与埋点的紧耦合进行了拆分,利用SDK的各个接口使得业务逻辑和埋点上报相互间互不干扰,埋点在触发后,采集接口获取各个参数,上报接口建立上报通道将参数传递给埋点服务器,各层接口间也相互独立,可以采用如反向依赖注入方式实现参数传递,对应代码的可维护性、可读性、开发效率等均有明显提升。采用SDK的各个接口方式也方便与不同应用对接,如应用、小程序、H5页面、快应用等不同类型应用,SDK的采集接口只需为对应的应用提供适配的接口即可,其采集接口、上报接口等各个接口可以复用任一应用,大大提高适配效率。
具体的,如图3a所示不同预设场景埋点触发后的处理流程,图3a仅为举例说明,可以根据具体实施情况进行调整,此处不做限定。其中,黑粗线之上为生命周期场景埋点触发的处理流程,黑粗线之下左侧为元素点击场景埋点触发的处理流程,包括埋点上报和对用户触发的点击事件的注册回调;黑粗线之下右侧为元素曝光场景埋点触发的处理流程,包括判断是否延迟曝光、埋点上报、对用户触发的元素进入页面视窗、离开页面视窗整个事件的注册回调、涉及重复上报判断等。对于各个预设场景埋点的具体处理参照步骤S101-S102的描述,在此不再赘述。
根据本发明提供的基于SDK的埋点处理方法,基于SDK进行埋点处理,将埋点处理流程划分为不同接口处理,与现有的业务解耦合,各个接口独立处理,提升代码的可维护性和开发效率。
实施例二
图2示出了根据本发明另一个实施例的基于SDK的埋点处理方法的流程示意图,如图2所示,该方法包括如下步骤:
步骤S201,根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及埋点对应的业务参数。
步骤S202,将公共参数以及业务参数传递给SDK的上报接口,由上报接口建立上报通道。
以上步骤参照图1实施例中步骤S101-S102的描述,在此不再赘述。
步骤S203,对触发的埋点进行广播。
步骤S204,基于广播,由SDK的表现接口对公共参数以及业务参数反序列化处理并展示。
考虑到上报接口直接上报埋点服务器时,可能存在如参数不正确的问题,本实施例对触发的埋点进行广播,即当埋点触发采集各个参数进行上报时,对这个触发的埋点进行广播。当接收到广播后,SDK设置有表现接口,可以基于广播通过如预设协议等方式,将上报接口的公共参数、业务参数进行反序列化处理,可以利用可展示界面(如控制台界面等)进行展示,方便直观地查看到参数,也方便检查是否存在问题,及时发现问题等,无需查询最终存储的埋点日志等,方便、直观、快捷。
步骤S205,由SDK的上报接口上报公共参数以及业务参数给埋点服务器。
该步骤参照图1实施例中步骤S102的描述,在此不再赘述。
具体的,如图3b所示的SDK各个接口的框架图,由接入页面触发埋点后,采集接口采集公共参数、业务参数,经上报接口建立上报通道上报埋点服务器,表现接口可以提供可视化的界面进行展示,实现埋点参数处理。其中,架构图中各个接口的详细描述参照方法各个实施例,此处不再赘述。
根据本发明提供的基于SDK的埋点处理方法,利用SDK的各个接口,可以方便的获取到各个参数,并基于SDK的表现接口提供可视化的参数展示,直观地查看各个参数,及时发现参数中可能存在的问题,与现有技术日志查看相比,更直观方便快捷。
实施例三
本申请实施例三提供了一种非易失性计算机存储介质,计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的基于SDK的埋点处理方法。
可执行指令具体可以用于使得处理器执行以下操作:根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及埋点对应的业务参数;其中,公共参数包括页面信息、用户信息和/或应用信息;将公共参数以及业务参数传递给SDK的上报接口,由上报接口建立上报通道,上报公共参数以及业务参数给埋点服务器。
在一种可选的实施方式中,预设场景埋点挂载于页面元素;预设场景包括生命周期场景、元素点击场景、元素曝光场景和/或弹窗展示场景。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:根据用户打开页面对页面的生命周期场景埋点的触发操作,基于SDK的采集接口获取并存储公共参数,以及,获取埋点对应的业务参数。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:根据用户点击页面元素对页面的元素点击场景埋点的触发操作,基于SDK的采集接口监听点击操作,获取公共参数,以及埋点对应的业务参数。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,确定元素在页面中的位置数据,直至判断元素位于页面视窗,获取公共参数以及埋点对应的业务参数。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,判断页面的元素是否需要多次上报;若否,对获取的埋点对应的业务参数进行去重处理。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,判断页面的元素是否需要延迟曝光;若是,监听并实时获取元素的业务参数,直至确定元素曝光以及业务参数更新后,获取公共参数以及更新埋点对应的实时的业务参数。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:根据用户操作弹窗页面对页面的弹窗展示场景埋点的触发操作,基于SDK的采集接口监听弹窗页面的数据变更,获取公共参数以及实时获取埋点对应的实时业务参数。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:基于SDK的采集接口采集和/或获取注入的公共参数以及业务参数,对公共参数以及业务参数进行序列化处理。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:基于埋点的预设通道类型,由上报接口建立对应的上报通道,以供将公共参数以及业务参数上报给埋点服务器。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:对触发的埋点进行广播;基于广播,由SDK的表现接口对公共参数以及业务参数反序列化处理并展示。
实施例四
图4示出了根据本发明实施例四的一种电子设备的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。
如图4所示,该电子设备可以包括:处理器(processor)402、通信接口(Communications Interface)404、存储器(memory)406、以及通信总线408。
其中:
处理器402、通信接口404、以及存储器406通过通信总线408完成相互间的通信。
通信接口404,用于与其它设备比如客户端或其它服务器等的网元通信。
处理器402,用于执行程序410,具体可以执行上述基于SDK的埋点处理方法实施例中的相关步骤。
具体地,程序410可以包括程序代码,该程序代码包括计算机操作指令。
处理器402可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。服务器包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器406,用于存放程序410。存储器406可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序410具体可以用于使得处理器402执行以下操作:根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及埋点对应的业务参数;其中,公共参数包括页面信息、用户信息和/或应用信息;将公共参数以及业务参数传递给SDK的上报接口,由上报接口建立上报通道,上报公共参数以及业务参数给埋点服务器。
在一种可选的实施方式中,预设场景埋点挂载于页面元素;预设场景包括生命周期场景、元素点击场景、元素曝光场景和/或弹窗展示场景。
在一种可选的实施方式中,程序410用于使得处理器402根据用户打开页面对页面的生命周期场景埋点的触发操作,基于SDK的采集接口获取并存储公共参数,以及,获取埋点对应的业务参数。
在一种可选的实施方式中,程序410用于使得处理器402根据用户点击页面元素对页面的元素点击场景埋点的触发操作,基于SDK的采集接口监听点击操作,获取公共参数,以及埋点对应的业务参数。
在一种可选的实施方式中,程序410用于使得处理器402根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,确定元素在页面中的位置数据,直至判断元素位于页面视窗,获取公共参数以及埋点对应的业务参数。
在一种可选的实施方式中,程序410用于使得处理器402根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,判断页面的元素是否需要多次上报;若否,对获取的埋点对应的业务参数进行去重处理。
在一种可选的实施方式中,程序410用于使得处理器402根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,判断页面的元素是否需要延迟曝光;若是,监听并实时获取元素的业务参数,直至确定元素曝光以及业务参数更新后,获取公共参数以及更新埋点对应的实时的业务参数。
在一种可选的实施方式中,程序410用于使得处理器402根据用户操作弹窗页面对页面的弹窗展示场景埋点的触发操作,基于SDK的采集接口监听弹窗页面的数据变更,获取公共参数以及实时获取埋点对应的实时业务参数。
在一种可选的实施方式中,程序410用于使得处理器402基于SDK的采集接口采集和/或获取注入的公共参数以及业务参数,对公共参数以及业务参数进行序列化处理。
在一种可选的实施方式中,程序410用于使得处理器402基于埋点的预设通道类型,由上报接口建立对应的上报通道,以供将公共参数以及业务参数上报给埋点服务器。
在一种可选的实施方式中,程序410用于使得处理器402对触发的埋点进行广播;基于广播,由SDK的表现接口对公共参数以及业务参数反序列化处理并展示。
程序410中各步骤的具体实现可以参见上述基于SDK的埋点处理实施例中的相应步骤中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
通过本实施例提供的方案,基于SDK进行埋点处理,将埋点处理流程划分为不同接口处理,与现有的业务解耦合,各个接口独立处理,提升代码的可维护性和开发效率。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了:A1.一种基于SDK的埋点处理方法,其包括:
根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数;其中,所述公共参数包括页面信息、用户信息和/或应用信息;
将所述公共参数以及所述业务参数传递给SDK的上报接口,由上报接口建立上报通道,上报所述公共参数以及所述业务参数给埋点服务器。
A2.根据A1所述的方法,其中,所述预设场景埋点挂载于页面元素;所述预设场景包括生命周期场景、元素点击场景、元素曝光场景和/或弹窗展示场景。
A3.根据A2所述的方法,其中,所述根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数进一步包括:
根据用户打开页面对页面的生命周期场景埋点的触发操作,基于SDK的采集接口获取并存储公共参数,以及,获取所述埋点对应的业务参数。
A4.根据A2所述的方法,其中,所述根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数进一步包括:
根据用户点击页面元素对页面的元素点击场景埋点的触发操作,基于SDK的采集接口监听点击操作,获取公共参数,以及所述埋点对应的业务参数。
A5.根据A2所述的方法,其中,所述根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数进一步包括:
根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,确定所述元素在页面中的位置数据,直至判断所述元素位于页面视窗,获取公共参数以及所述埋点对应的业务参数。
A6.根据A5所述的方法,其中,所述根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数进一步包括:
根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,判断页面的元素是否需要多次上报;
若否,对获取的所述埋点对应的业务参数进行去重处理。
A7.根据A5所述的方法,其中,所述根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数进一步包括:
根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,判断页面的元素是否需要延迟曝光;
若是,监听并实时获取元素的业务参数,直至确定元素曝光以及业务参数更新后,获取公共参数以及更新埋点对应的实时的业务参数。
A8.根据A2所述的方法,其中,所述根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数进一步包括:
根据用户操作弹窗页面对页面的弹窗展示场景埋点的触发操作,基于SDK的采集接口监听弹窗页面的数据变更,获取公共参数以及实时获取所述埋点对应的实时业务参数。
A9.根据A1-A8中任一项所述的方法,其中,所述基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数具体为:基于SDK的采集接口采集和/或获取注入的公共参数以及业务参数,对所述公共参数以及业务参数进行序列化处理。
A10.根据A1-A9中任一项所述的方法,其中,所述将所述公共参数以及所述业务参数传递给SDK的上报接口,由上报接口建立上报通道,上报所述公共参数以及所述业务参数给埋点服务器进一步包括:
基于所述埋点的预设通道类型,由所述上报接口建立对应的上报通道,以供将所述公共参数以及所述业务参数上报给埋点服务器。
A11.根据A1-A10中任一项所述的方法,其中,在所述将所述公共参数以及所述业务参数传递给SDK的上报接口之后,所述方法还包括:
对触发的埋点进行广播;
基于广播,由SDK的表现接口对所述公共参数以及所述业务参数反序列化处理并展示。
本发明还公开了:B12.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行以下操作:
根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数;其中,所述公共参数包括页面信息、用户信息和/或应用信息;
将所述公共参数以及所述业务参数传递给SDK的上报接口,由上报接口建立上报通道,上报所述公共参数以及所述业务参数给埋点服务器。
B13.根据B12所述的电子设备,所述预设场景埋点挂载于页面元素;所述预设场景包括生命周期场景、元素点击场景、元素曝光场景和/或弹窗展示场景。
B14.根据B13所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
根据用户打开页面对页面的生命周期场景埋点的触发操作,基于SDK的采集接口获取并存储公共参数,以及,获取所述埋点对应的业务参数。
B15.根据B13所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
根据用户点击页面元素对页面的元素点击场景埋点的触发操作,基于SDK的采集接口监听点击操作,获取公共参数,以及所述埋点对应的业务参数。
B16.根据B13所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,确定所述元素在页面中的位置数据,直至判断所述元素位于页面视窗,获取公共参数以及所述埋点对应的业务参数。
B17.根据B16所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,判断页面的元素是否需要多次上报;
若否,对获取的所述埋点对应的业务参数进行去重处理。
B18.根据B16所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,判断页面的元素是否需要延迟曝光;
若是,监听并实时获取元素的业务参数,直至确定元素曝光以及业务参数更新后,获取公共参数以及更新埋点对应的实时的业务参数。
B19.根据B13所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
根据用户操作弹窗页面对页面的弹窗展示场景埋点的触发操作,基于SDK的采集接口监听弹窗页面的数据变更,获取公共参数以及实时获取所述埋点对应的实时业务参数。
B20.根据B12-B19中任一项所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
基于SDK的采集接口采集和/或获取注入的公共参数以及业务参数,对所述公共参数以及业务参数进行序列化处理。
B21.根据B12-B20中任一项所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
基于所述埋点的预设通道类型,由所述上报接口建立对应的上报通道,以供将所述公共参数以及所述业务参数上报给埋点服务器。
B22.根据B12-B21中任一项所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
对触发的埋点进行广播;
基于广播,由SDK的表现接口对所述公共参数以及所述业务参数反序列化处理并展示。
本发明还公开了:C23.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如A1-A11中任一项所述的基于SDK的埋点处理方法对应的操作。
Claims (10)
1.一种基于SDK的埋点处理方法,其包括:
根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数;其中,所述公共参数包括页面信息、用户信息和/或应用信息;
将所述公共参数以及所述业务参数传递给SDK的上报接口,由上报接口建立上报通道,上报所述公共参数以及所述业务参数给埋点服务器。
2.根据权利要求1所述的方法,其中,所述预设场景埋点挂载于页面元素;所述预设场景包括生命周期场景、元素点击场景、元素曝光场景和/或弹窗展示场景。
3.根据权利要求2所述的方法,其中,所述根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数进一步包括:
根据用户打开页面对页面的生命周期场景埋点的触发操作,基于SDK的采集接口获取并存储公共参数,以及,获取所述埋点对应的业务参数。
4.根据权利要求2所述的方法,其中,所述根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数进一步包括:
根据用户点击页面元素对页面的元素点击场景埋点的触发操作,基于SDK的采集接口监听点击操作,获取公共参数,以及所述埋点对应的业务参数。
5.根据权利要求2所述的方法,其中,所述根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数进一步包括:
根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,确定所述元素在页面中的位置数据,直至判断所述元素位于页面视窗,获取公共参数以及所述埋点对应的业务参数。
6.根据权利要求5所述的方法,其中,所述根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数进一步包括:
根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,判断页面的元素是否需要多次上报;
若否,对获取的所述埋点对应的业务参数进行去重处理。
7.根据权利要求5所述的方法,其中,所述根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数进一步包括:
根据用户操作页面对页面的元素曝光场景埋点的触发操作,基于SDK的采集接口监听用户的页面操作,判断页面的元素是否需要延迟曝光;
若是,监听并实时获取元素的业务参数,直至确定元素曝光以及业务参数更新后,获取公共参数以及更新埋点对应的实时的业务参数。
8.根据权利要求2所述的方法,其中,所述根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数进一步包括:
根据用户操作弹窗页面对页面的弹窗展示场景埋点的触发操作,基于SDK的采集接口监听弹窗页面的数据变更,获取公共参数以及实时获取所述埋点对应的实时业务参数。
9.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行以下操作:
根据用户对页面的至少一个预设场景埋点的触发操作,基于SDK的采集接口得到公共参数以及所述埋点对应的业务参数;其中,所述公共参数包括页面信息、用户信息和/或应用信息;
将所述公共参数以及所述业务参数传递给SDK的上报接口,由上报接口建立上报通道,上报所述公共参数以及所述业务参数给埋点服务器。
10.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如权利要求1-8中任一项所述的基于SDK的埋点处理方法对应的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210552052.4A CN114911705A (zh) | 2022-05-20 | 2022-05-20 | 基于sdk的埋点处理方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210552052.4A CN114911705A (zh) | 2022-05-20 | 2022-05-20 | 基于sdk的埋点处理方法、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114911705A true CN114911705A (zh) | 2022-08-16 |
Family
ID=82768838
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210552052.4A Pending CN114911705A (zh) | 2022-05-20 | 2022-05-20 | 基于sdk的埋点处理方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114911705A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117591381A (zh) * | 2024-01-18 | 2024-02-23 | 南京研利科技有限公司 | 数据上报方法及装置 |
-
2022
- 2022-05-20 CN CN202210552052.4A patent/CN114911705A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117591381A (zh) * | 2024-01-18 | 2024-02-23 | 南京研利科技有限公司 | 数据上报方法及装置 |
CN117591381B (zh) * | 2024-01-18 | 2024-04-09 | 南京研利科技有限公司 | 数据上报方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8260820B2 (en) | Method and apparatus for searching | |
CN103038752B (zh) | 一种用于管理软件问题报告的方法、系统和设备 | |
US7739551B2 (en) | Web page error reporting | |
US8140963B2 (en) | Tag aggregator | |
US7801996B2 (en) | Systems and methods for providing a local client proxy | |
US7765293B2 (en) | System and algorithm for monitoring event specification and event subscription models | |
CN110956269B (zh) | 数据模型的生成方法、装置、设备以及计算机存储介质 | |
CN107644075B (zh) | 收集页面信息的方法和装置 | |
CN111427701A (zh) | 一种工作流引擎系统和业务处理方法 | |
CN114911705A (zh) | 基于sdk的埋点处理方法、电子设备及存储介质 | |
WO2024082772A1 (zh) | 确定广告投放策略的方法、装置、计算机设备及存储介质 | |
CN111651494A (zh) | 数据处理方法、装置、设备及计算机可读存储介质 | |
US9400961B2 (en) | Message mechanism for workflow interfacing | |
CN115563423A (zh) | 数据采集方法、装置、计算机设备及存储介质 | |
US20100030599A1 (en) | Method and apparatus for integrating health care payers and provider systems with health care transaction systems using a single hipaa edi response generation component | |
CN110489690B (zh) | 监控政务服务应用系统的方法、服务器、设备及存储介质 | |
CN113542103B (zh) | 社交通信群组中账号的邀请监测方法、装置及移动终端 | |
US11669845B1 (en) | Systems and methods for competitive online quotes web service | |
US20240037174A1 (en) | Client-side generation of lossless object model representations of dynamic webpages | |
CN116701185A (zh) | 实时任务的代码调试方法及电子设备 | |
CN117472716A (zh) | 非入侵式应用日志采集方法、装置、设备及存储介质 | |
JP3150065B2 (ja) | 操作画面自動生成方法および操作画面自動生成システム | |
Freeman et al. | Integrating internal, intranet and Internet access to spatial datasets via ERIN’s Environmental Data Directory | |
CN115686999A (zh) | 一种集中式埋点方法、装置、设备、介质及程序产品 | |
CN116866165A (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 |