首页 / 专利库 / 电脑零配件 / 固件 / 软件 / 软件套件 / 通过软件开发工具包实现移动设备数据跟踪的方法及系统

通过软件开发工具包实现移动设备数据跟踪的方法及系统

阅读:1发布:2021-06-22

专利汇可以提供通过软件开发工具包实现移动设备数据跟踪的方法及系统专利检索,专利查询,专利分析的服务。并且本 发明 涉及通过 软件 开发工具包SDK实现移动设备数据 跟踪 的方法和系统,通过SDK为移动设备应用程序中的元素分配标识符以使得标识符能够 定位 应用程序中的元素;当元素被触发时确定元素对应的程序上下文信息,并将元素、标识符以及元素被触发时的程序上下文信息缓存在移动设备上;当连接到网络时,将移动设备缓存的元素、标识符以及程序上下文信息发送到 云 端 服务器 ,从而使得云端服务器能够根据接收到的标识符获取元素和该程序上下文信息;程序上下文信息包括触发时间、元素所在页面显示时间、触发的方式等,由此,本发明能够提高数据跟踪的效率、节约人 力 资源成本。此外,缓存数据避免了网络不稳定时反复重试,也避免了不必要的流量消耗。,下面是通过软件开发工具包实现移动设备数据跟踪的方法及系统专利的具体信息内容。

1.一种通过软件开发工具包实现移动设备数据跟踪的方法,其特征在于,包括:
通过软件开发工具包,为所述移动设备应用程序中的元素分配标识符以使得所述标识符能够定位所述应用程序中的所述元素;
当所述元素被触发时,确定所述元素对应的程序上下文信息,并将所述元素、所述元素对应的标识符以及所述元素被触发时的程序上下文信息缓存在所述移动设备上;
当所述移动设备连接到网络时,将所述移动设备缓存的所述元素、所述标识符以及所述程序上下文信息发送到服务器,从而使得所述云端服务器能够根据接收到的所述标识符获取所述被触发的元素以及所述元素被触发时的程序上下文信息;
其中,所述程序上下文信息包括但不限于所述元素被触发的时间、所述元素所在页面的显示时间、所述元素被触发的方式、所述移动设备操作系统版本号和所述移动设备的型号。
2.根据权利要求1所述的方法,其特征在于,所述通过软件开发工具包,为所述移动设备应用程序中的元素分配标识符以使得所述标识符能够定位所述应用程序中的所述元素,包括:
通过软件开发工具包,根据所述元素的属性,为所述移动设备应用程序中的每一个元素自动分配所述标识符,所述标识符能够唯一定位所述应用程序中的元素;以及其中,所述元素的属性包括但不限于统一资源定位符URL、类、包装、控件、嵌套结构、标签结构、元素顺序、文本内容和身份标识号ID。
3.根据权利要求2所述的方法,其特征在于,在所述元素被触发之前,还包括:
所述云端服务器建立并保存预设标签,并保存所述预设标签、所述标识符、所述元素和所述程序上下文信息之间的对应关系。
4.根据权利要求3所述的方法,其特征在于,在所述云端服务器建立并保存预设标签,并保存所述预设标签、所述标识符、所述元素和所述程序上下文信息之间的对应关系之后,还包括:
所述云端服务器基于所述对应关系,通过接收到的标识符获取与所述接收到的标识符对应的所述元素、所述程序上下文信息和所述预设标签。
5.根据权利要求4所述的方法,其特征在于,所述对应关系为映射关系,并且当所述映射关系发生变化时,云端服务器建立新的映射关系。
6.一种通过软件开发工具包实现移动设备数据跟踪的系统,包括:
移动设备,所述移动设备上设有软件开发工具包并配有软件开发工具包接口,所述移动设备通过软件开发工具包,为所述移动设备应用程序中的元素分配标识符以使得所述标识符能够定位所述应用程序中的所述元素;
当所述元素被触发时,确定所述元素对应的程序上下文信息,并将所述元素、所述元素对应的标识符以及所述元素被触发时的程序上下文信息缓存在所述移动设备上;
当所述移动设备连接到网络时,将所述移动设备缓存的所述元素、所述标识符以及所述程序上下文信息发送到云端服务器;以及
云端服务器,所述云端服务器通过网络与所述移动设备连接,所述云端服务器上设有软件开发工具包并配有软件开发工具包接口,所述云端服务器接收所述移动设备发送的所述元素、所述标识符以及所述程序上下文信息,并根据接收到的所述标识符获取所述被触发的元素以及所述元素被触发时的程序上下文信息;
所述程序上下文信息包括但不限于所述元素被触发时的时间、所述元素所在页面的显示时间、所述元素被触发的方式、所述移动设备操作系统版本号和所述移动设备的型号。
7.根据权利要求6所述的系统,其特征在于,所述移动设备通过软件开发工具包,根据所述元素的属性,为移动设备应用程序中的每一个元素自动分配所述标识符,所述标识符能够唯一定位所述应用程序中的元素;以及
其中,所述元素的属性包括但不限于统一资源定位符URL、类、包装、控件、嵌套结构、标签结构、元素顺序、文本内容和身份标识号ID。
8.根据权利要求7所述的系统,其特征在于,所述云端服务器在所述元素被触发之前,建立并保存预设标签,以及所述预设标签、所述标识符、所述元素和所述程序上下文信息之间的对应关系。
9.根据权利要求8所述的系统,其特征在于,所述云端服务器在建立并保存预设标签,以及所述预设标签、所述标识符、所述元素和所述程序上下文信息之间的对应关系之后,还用于基于所述对应关系,通过接收到的标识符获取与所述接收到的标识符对应的所述元素、所述预设标签和所述程序上下文信息。
10.根据权利要求9所述的系统,其特征在于,所述对应关系为映射关系,并且当所述映射关系发生变化时,云端服务器建立新的映射关系。

说明书全文

通过软件开发工具包实现移动设备数据跟踪的方法及系统

技术领域

[0001] 本发明涉及数据处理领域,尤其涉及通过软件开发工具包(英文:Software Development Kit,缩写:SDK)实现移动设备数据跟踪的方法及系统。

背景技术

[0002] SDK是为特定的软件包、软件框架硬件平台、操作系统等建立应用软件的开发工具,一般仅用于为程序设计语言提供应用程序接口(英语:Application Programming Interface,缩写:API)。在目前通过SDK对移动设备应用程序用户进行数据跟踪的技术方案中,通常需要工程师进行人工埋点,具体包括:工程师安装SDK,然后为每一个需要跟踪的数据调用SDK提供的API,并人工输入工程代码,即埋点。比如,需要跟踪主页的登录按钮时,需要工程师在相应位置嵌入事件处理函数;需要统计应用内的页面访问次数或时长时,则需要在每一个页面进入和离开的位置手工嵌入调用onPageStart和onPageEnd函数的代码。
[0003] 由此可见,现有方案在实现数据跟踪时需要消耗工程师大量的时间在各个位置输入代码,使得实现数据跟踪的效率极低并造成大量的人资源浪费。并且,在产品快速开发和迭代的情况下,大量的数据定义需要及时修改,这更加严重地导致了工作效率低下和人力资源浪费,并且数据的时效性很难保证,增加了程序开发中出错的险。当数据的定义和需求被提出后,至少需要经历一个开发周期、一个发布过程以及一段时间的使用后才可以看到数据,大大降低了数据采集和分析的效率。加之,数据跟踪虽然由工程师实现,但数据的定义和需求往往来自于业务部,比如市场、销售、战略、产品等部门,而现有的数据跟踪方式割裂了业务定义和工程实现,使得不同部门间的沟通成本大大增加,不利于提高工作效率。

发明内容

[0004] 技术问题
[0005] 有鉴于此,本发明要解决的技术问题是,如何提供一种通过SDK实现移动设备数据跟踪的方法及系统以提高数据跟踪的效率,减少了程序开发风险,并降低人力资源成本。
[0006] 解决方案
[0007] 为了解决上述技术问题,根据本发明一实施例,在第一方面,提供了一种通过SDK实现移动设备数据跟踪的方法,包括:
[0008] 通过SDK,为所述移动设备应用程序中的元素分配标识符以使得所述标识符能够定位所述应用程序中的所述元素;
[0009] 当所述元素被触发时,确定所述元素对应的程序上下文信息,并将所述元素、所述元素对应的标识符以及所述元素被触发时的程序上下文信息缓存在移动设备上;
[0010] 当所述移动设备连接到网络时,将所述移动设备缓存的所述元素、所述标识符以及所述程序上下文信息发送到服务器,从而使得所述云端服务器能够根据接收到的所述标识符获取所述被触发的元素以及所述元素被触发时的程序上下文信息;
[0011] 其中,所述程序上下文信息包括但不限于所述元素被触发的时间、所述元素所在页面的显示时间、所述元素被触发的方式、所述移动设备操作系统版本号和所述移动设备的型号。
[0012] 在一种可能的实现方式中,所述通过SDK,为所述移动设备应用程序中的元素分配标识符以使得所述标识符能够定位所述应用程序中的所述元素,包括:
[0013] 通过SDK,根据所述元素的属性,为所述移动设备应用程序中的每一个元素自动分配所述标识符,所述标识符能够唯一定位所述应用程序中的元素;以及
[0014] 其中,所述元素的属性包括但不限于统一资源定位符URL、类、包装、控件、嵌套结构、标签结构、元素顺序、文本内容和身份标识号ID。
[0015] 在一种可能的实现方式中,在所述元素被触发之前,还包括:
[0016] 所述云端服务器建立并保存预设标签,以及保存所述预设标签、所述标识符、所述元素和所述程序上下文信息之间的对应关系。
[0017] 在一种可能的实现方式中,在所述云端服务器建立并保存预设标签,以及所述预设标签、所述标识符和所述元素之间的对应关系之后,还包括:
[0018] 所述云端服务器基于所述对应关系,通过接收到的标识符获取与所述接收到的标识符对应的所述元素、所述程序上下文信息和所述预设标签。
[0019] 在一种可能的实现方式中,所述对应关系为映射关系,并且当所述映射关系发生变化时,云端服务器建立新的映射关系。
[0020] 为了解决上述技术问题,根据本发明一实施例,在第二方面,提供了一种通过SDK实现移动设备数据跟踪的系统,包括:
[0021] 移动设备,所述移动设备上设有SDK并配有SDK接口,所述移动设备通过SDK,为所述移动设备应用程序中的元素分配标识符以使得所述标识符能够定位所述应用程序中的所述元素;
[0022] 当所述元素被触发时,确定所述元素对应的程序上下文信息,并将所述元素、所述元素对应的标识符以及所述元素被触发时的程序上下文信息缓存在移动设备上;
[0023] 当所述移动设备连接到网络时,将所述移动设备缓存的所述元素、所述标识符以及所述程序上下文信息发送到云端服务器;以及
[0024] 云端服务器,所述云端服务器通过网络与所述移动设备连接,所述云端服务器上设有SDK并配有SDK接口,所述云端服务器接收所述移动设备发送的所述元素、所述标识符以及所述程序上下文信息,并根据接收到的所述标识符获取所述被触发的元素以及所述元素被触发时的程序上下文信息;
[0025] 所述程序上下文信息包括但不限于所述元素被触发时的时间、所述元素所在页面的显示时间、所述元素被触发的方式、所述移动设备操作系统版本号和所述移动设备的型号。
[0026] 在一种可能的实现方式中,所述移动设备通过SDK,根据所述元素的属性,为移动设备应用程序中的每一个元素自动分配所述标识符,所述标识符能够唯一定位所述应用程序中的元素;以及
[0027] 其中,所述元素的属性包括但不限于统一资源定位符URL、类、包装、控件、嵌套结构、标签结构、元素顺序、文本内容和身份标识号ID。
[0028] 在一种可能的实现方式中,所述云端服务器在所述元素被触发之前,建立并保存预设标签,以及所述预设标签、所述标识符、所述元素和所述程序上下文信息之间的对应关系。
[0029] 在一种可能的实现方式中,所述云端服务器在建立并保存预设标签,以及所述预设标签、所述标识符、所述元素和所述程序上下文信息之间的对应关系之后,还用于基于所述对应关系,通过接收到的标识符获取与所述接收到的标识符对应的所述元素、所述预设标签和所述程序上下文信息。
[0030] 在一种可能的实现方式中,所述对应关系为映射关系,并且当所述映射关系发生变化时,云端服务器建立新的映射关系。
[0031] 有益效果
[0032] 本发明提供的通过SDK实现移动设备数据跟踪的方法及系统,通过SDK为移动设备应用程序中的元素分配标识符以使得该标识符能够定位应用程序中的该元素;当该元素被触发时,确定该元素对应的程序上下文信息,并将该元素、该元素对应的标识符以及该元素被触发时的程序上下文信息缓存在移动设备上;当移动设备连接到网络时,将移动设备缓存的元素、标识符以及程序上下文信息发送到云端服务器,从而使得云端服务器能够根据接收到的标识符获取被触发的元素以及该元素被触发时的程序上下文信息,由此避免大量人工数据埋点,大幅提高了数据跟踪的效率并解放了工程师的大量时间,减少程序开发风险,节约人力资源成本。其中,缓存数据既避免了在网络状况不稳定时反复重试,还避免了给用户带来不必要的流量消耗。自动上传所有数据避免了产生数据分析需求后开发程序和发布程序的过程,缩短了程序开发周期。此外,自动管理数据定义,实现了自动高效的数据管理和版本控制。
[0033] 本发明提供的通过SDK实现移动设备数据跟踪的方法,通过建立并保存元素、标识符、预设标签和元素被触发时的程序上下文信息之间的对应关系,以及云端服务器基于该对应关系,通过接收到的标识符匹配预设标签,使得业务人员能够直接定义所需的数据,集产品体验和数据分析于一体,提高了数据管理的效率并加强了需求和实现的一致性。
[0034] 本发明提供的通过SDK实现移动设备数据跟踪的方法,通过当映射关系发生变化时,云端服务器建立新的映射关系,以新的映射关系替换原有所述映射关系并将原有所述映射关系存档,为数据定义的变更提供了良好的版本控制和历史追溯,适用于快速迭代的产品和功能细节较多的产品。
[0035] 根据下面参考附图对示例性实施例的详细说明,本发明的其它特征及方面将变得清楚。

附图说明

[0036] 包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本发明的示例性实施例、特征和方面,并且用于解释本发明的原理。
[0037] 图1示出根据本发明一实施例提供的通过SDK实现移动设备数据跟踪的方法的流程图
[0038] 图2示出根据本发明另一实施例提供的通过SDK实现移动设备数据跟踪的方法的流程图;
[0039] 图3示出在本发明另一实施例中在加载手机app时进行步骤S4的示意图;
[0040] 图4示出在本发明实施例中云端服务器基于对应关系进行标识符与标签之间的转换的示意图;
[0041] 图5示出在本发明实施例中将标签用于制图的示意图;
[0042] 图6示出根据本发明一实施例提供的通过SDK实现移动设备数据跟踪的系统的结构示意图。

具体实施方式

[0043] 以下将参考附图详细说明本发明的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
[0044] 在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
[0045] 另外,为了更好的说明本发明,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本发明同样可以实施。本发明实施例可以典型应用于安卓Android,苹果公司的移动操作系统iOS,微软移动设备操作系统Windows Phone等平台的App、智能硬件、公司内部或第三方的数据系统等,在一些实例中,对于本领域技术人员熟知的方法、手段、元件未作详细描述,以便于凸显本发明的主旨。
[0046] 图1示出根据本发明的一实施例提供的通过SDK实现移动设备数据跟踪的方法的流程图。如图1所示,该方法包括:
[0047] 步骤S1、通过SDK,为移动设备应用程序中的元素分配标识符以使得所述标识符能够定位所述应用程序中的所述元素。
[0048] 通过SDK,对移动设备应用程序app中的每一个元素进行标记,包括自动为app页面的每一个元素按照其统一资源定位符URL、类、包装、控件、嵌套结构、标签结构、元素顺序、文本内容、ID属性等分配标识符,每个标识符可以唯一定位页面上的元素,比如app中的一个视图(如登陆界面,主界面,设置界面等)、一个按钮(添加按钮或排序按钮以及侧边广告栏等)。
[0049] 步骤S2、当元素被触发时,确定该元素对应的程序上下文信息,并将所述元素、所述元素对应的标识符以及所述元素被触发时的程序上下文信息缓存在移动设备上。
[0050] 由于移动设备通常不能随时向服务器发送数据,因而需要先在本地缓存。
[0051] 步骤S3、当移动设备连接到网络时,将该移动设备缓存的所述元素、所述标识符以及所述程序上下文信息发送到云端服务器,从而使得所述云端服务器能够根据接收到的所述标识符获取所述被触发的元素以及所述元素被触发时的程序上下文信息。
[0052] 移动设备可以选择合适的网络(例如WIFI)进行连接。标识符用来定位元素,元素本身是对象,元素被触发时,会把程序上下文信息传入服务器,程序上下文信息包括但不限于所述元素被触发的时间、所述元素所在页面的显示时间、所述元素被触发的方式、移动设备操作系统版本号和移动设备的型号。
[0053] 由此,云端服务器可以自动跟踪移动设备的数据内容,而无需工程师进行人工埋点,节约人力资源成本并提高数据跟踪的效率。其中,缓存数据既避免了在网络状况不稳定时反复重试,还避免了给用户带来不必要的流量消耗。
[0054] 根据本发明实施例可以跟踪到的数据内容包括:
[0055] 对象包括:移动设备应用程序中的元素或者视图页面;
[0056] 行动包括:浏览,点击,滚动,滑动等手势;
[0057] 谁,即主体包括:用户ID;
[0058] 何时包括:时间,时区;
[0059] 地点包括:位置信息,国家,城市,或者更精确的GPS;
[0060] 其他可以收集的信息包括:设备信息,操作系统,版本号,语音,视频,文本等。
[0061] 在一种可能的实现方式中,如图2所示,在所述元素被触发之前,还包括步骤S4、所述云端服务器建立并保存预设标签,以及所述预设标签、所述标识符、所述元素和所述程序上下文信息之间的对应关系,以及在所述元素被触发之后,还包括步骤S5、所述云端服务器基于所述对应关系,通过接收到的标识符获取与所述接收到的标识符对应的所述元素和程序上下文信息,匹配并显示给操作人员友好易懂的预设标签。
[0062] 具体包括:数据采集者(例如手机用户)登入云应用,启动移动设备应用程序app并进入圈选模式,选中需要的元素或者页面并为其设置预设标签,例如为元素或者页面设置一个直观易懂的名字(即预设标签)后保存,如图3所示。云端服务器建立并保存该预设标签、元素及其程序上下文信息、标识符之间的对应关系。并且,云端服务器能够基于所述对应关系,通过接收到的标识符获取与之对应的元素及其程序上下文信息和预设标签,由此使得企业用户可以在移动设备应用程序app产品上直接看到每个标签对应的视觉元素,也可以在管理页面对所有标签进行排序、搜索、过滤及合并,整个过程不需要工程师人工写代码,完全是直观的所见即所得,可以通过鼠标拖拽圈点来完成,操作简单明了,有利于提高工作效率并降低人力资源成本,使业务端的员工能够直接定义并获得数据。
[0063] 在另一种可能的实现方式中,当改变已有标签的名字或映射关系时,云端服务器建立新的对应关系版本并将老版本存档。这样,每次定义的细节改变,都会生成相应的快照,所以数据的历史变化能够实现自动管理。
[0064] 当移动设备应用程序app的被触发元素以及该元素被触发时的程序上下文信息被发送至云端服务器后,云端服务器可以基于该对应关系,进行标识符与标签的自动转换,从而把元素对应的标识符,换成了企业用户定义的简单易懂的标签,通过标签就可以获得所触发的元素的信息(例如:时间,地点,人物,动作,对象),获知跟踪对象对相应的页面元素所进行的操作,如图4所示。其中,元素识别符的关键组成部分包括:所在视图的名称、xpath、显示的文本内容和相同页面xpath结构下元素的顺序号。
[0065] 其中,所在视图的名称:定位视图页面级别内容,比如SettingActivity、UISettingViewController。
[0066] xpath:用于唯一定位视图页面中的某个视图元素的字符串,比如:/SettingActivity/SubWindow/LinearLayout#1/FrameLayout#0/TextView#2,比如:/UIHomeViewController/UITableView#0/UITableViewCell#3/UIButton#0,主要包括:视图结构中的诸如Layout、UITableView等容器,以及TextView,UIButton等元素。
[0067] 显示的文本内容:包括比如“登录”,“注册”,“确认”等。
[0068] 相同页面xpath的顺序号:主要用来区别兄弟节点
[0069] 此外,移动设备应用程序app端识别符的关键组成还包括:app包装名、页面类名、xpath和显示的文本内容,具体包括:
[0070] App包装名主要用于定位app,比如com.testapp.stage1。
[0071] 页面类名主要用于定位页面,比如UIHomeViewController。
[0072] xpath主要用于定位页面元素,同时包含了顺序号,比如/UIWindow/UILayoutContainerView#0/UIView#3/UILabel#0。
[0073] 显示的文本内容包括比如“登录”,“注册”,“确认”等。
[0074] 此外,如图5所示,企业用户还可以将定义好的标签用鼠标拖入制图模,生成各种分析图表以判断趋势和异常。
[0075] 图6示出根据本发明一实施例提供的通过SDK实现移动设备数据跟踪的系统100,如图6所示,该系统100包括:移动设备110和云端服务器120。
[0076] 其中,移动设备110上设有SDK并配有SDK API,移动设备110通过SDK,为移动设备110的应用程序中的元素分配标识符以使得该标识符能够定位应用程序中的元素;当元素被触发时,确定元素对应的程序上下文信息,并将元素、元素对应的标识符以及元素被触发时的程序上下文信息缓存在移动设备110上;当移动设备110连接到网络时,将移动设备110缓存的元素、标识符以及程序上下文信息发送到云端服务器120。具体如步骤S1与S2所述,在此不再赘述。
[0077] 云端服务器120,通过网络与移动设备110连接,云端服务器120上设有SDK并配有SDK接口,云端服务器120接收移动设备110发送的所述元素、标识符以及程序上下文信息,并根据接收到的标识符获取被触发的元素以及元素被触发时的程序上下文信息;程序上下文信息包括但不限于元素被触发时的时间、元素所在页面的显示时间、元素被触发的方式、移动设备110操作系统版本号和移动设备110的型号。具体如步骤S3所述,在此不再赘述。
[0078] 在一种可能的实现方式中,移动设备110通过SDK,根据元素的属性,为移动设备应用程序中的每一个元素自动分配标识符,该标识符能够唯一定位所述应用程序中的元素,其中,所述元素的属性包括统一资源定位符URL、类、包装、控件、嵌套结构、标签结构、元素顺序、文本内容和身份标识号ID。
[0079] 在另一种可能的实现方式中,云端服务器120在元素被触发之前,建立并保存预设标签,以及该预设标签、标识符和元素之间的对应关系,并且基于该对应关系,通过接收到的标识符获取与之对应的元素及其程序上下文信息,和该预设标签。具体如步骤S3~S4所述,在此不再赘述。
[0080] 在再一种可能的实现方式中,所述对应关系为映射关系,并且当所述映射关系发生变化时,云端服务器120建立新的映射关系,并将原有映射关系存档。
[0081] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈