应用信息采集方法、系统、电子设备及存储介质与流程

文档序号:26988163发布日期:2021-10-19 20:34阅读:108来源:国知局
应用信息采集方法、系统、电子设备及存储介质与流程

1.本技术涉及自动化测试领域,特别涉及一种应用信息采集方法、系统、电子设备及存储介质。


背景技术:

2.一些操作系统的自动化框架通常是通过ui(使用者界面,userinterface)控件检索技术来获取操作系统应用页面中原生元素的位置和信息,方便编写对应控件的测试脚本模拟点击或者其它操作实现自动化测试的目的。由于有部分操作系统并非开源系统,所以提供自定义的服务非常有限,导致自动测试通常需要开发人员在开发阶段手动添加对应页面元素,比如指定控件按钮、文本等的脚本,然后再通过操作系统原生的ui测试框架,但是这样做无法有效地采集到页面元素的所有信息。
3.目前,可以通过第三方跨平台测试自动化工具来链接操作系统的原生框架,实现获取操作系统设备启动应用页面中的原生元素的信息,如控件名称、控件类型、宽高、坐标等等。但是通过第三方跨平台测试工具返回的页面数据并非控件的全部的属性,而是按自动化测试工具功能输出的自定义数据,自动化测试工具输出的自定义数据可能无法采集用户需要的元素属性数据,从而无法满足一定深度的测试需求。


技术实现要素:

4.本技术旨在至少解决现有技术中存在的技术问题之一。为此,本技术提出一种应用信息采集方法、系统、电子设备及存储介质,无需使用操作系统的原生测试框架,能够保证开发人员在开发应用时不需要专门开发对应页面控件的测试脚本,并且按照用户需求快速获取应用的页面初始信息。
5.根据本技术的第一方面实施例的应用信息采集方法,包括:
6.获取初始链接工程、应用程序的应用信息和页面初始信息;
7.将所述应用信息和所述页面初始信息导入所述初始链接工程,生成动态链接工程;
8.编译所述动态链接工程,得到动态链接库;
9.将所述动态链接库加载到所述应用程序,以使所述应用程序根据所述动态链接库采集页面目标信息。
10.根据本技术实施例的应用信息采集方法,至少具有如下有益效果:
11.获取初始链接工程、应用程序的应用信息以及应用程序的页面初始信息,然后将获取到的应用信息以及页面初始信息导入初始链接工程中,生成动态链接工程,接着编译动态链接工程,得到动态链接库,最后将动态链接库加载到应用程序中,使得应用程序可以根据动态链接库采集应用程序的页面目标信息。本技术在应用程序开发完成后再链接动态链接库,通过动态链接库采集页面目标信息,无需侵入应用程序的功能代码,也无需使用操作系统的原生测试框架,能够保证开发人员在开发应用时不需要专门开发对应页面控件的
测试脚本,并且按照用户需求快速获取应用的页面初始信息。
12.根据本技术的一些实施例,所述应用程序的页面初始信息,通过以下步骤获取:
13.获取预设应用的页面视图;
14.过滤所述页面视图中的内部子控件;
15.提取所述页面视图中的页面初始信息,所述页面初始信息包括控件信息。
16.根据本技术的一些实施例,所述方法还包括:
17.获取所述控件信息对应的控件变量以及所述控件变量调用的控件方法;
18.对所述控件变量以及所述控件方法进行序列化,生成序列信息。
19.根据本技术的一些实施例,所述将所述动态链接库加载到所述应用程序,包括:
20.基于所述应用信息确定所述应用程序所应用的操作系统;
21.获取所述操作系统的开发工具;
22.通过所述开发工具将所述动态链接库加载到所述预设应用中。
23.根据本技术的一些实施例,所述以使所述应用程序根据所述动态链接库采集所述页面目标信息,包括:
24.在所述动态链接库中建立通讯服务;
25.基于所述通讯服务采集所述应用程序中的页面目标信息。
26.根据本技术的一些实施例,所述将所述动态链接库加载到所述应用程序,包括:
27.获取所述应用程序进行编译和打包后生成的可执行文件;
28.将所述动态链接库加载至所述可执行文件中。
29.根据本技术的一些实施例,所述方法还包括:
30.获取所述动态链接库对应的第一签名证书和所述可执行文件对应的第二签名证书;
31.判断所述第一签名证书与所述第二签名证书的签名是否相同;
32.若是,则确定所述动态链接库加载正常。
33.根据本技术的第二方面实施例的应用信息采集系统,包括:
34.获取模块:所述获取模块用于获取初始链接工程、应用程序的应用信息和页面初始信息;
35.导入模块:所述导入模块用于将所述应用信息和所述页面初始信息导入所述初始链接工程,生成动态链接工程;
36.编译模块:所述编译模块用于编译所述动态链接工程,得到动态链接库;;
37.采集模块:所述采集模块用于将所述动态链接库加载到所述应用程序,以使所述应用程序根据所述动态链接库采集页面目标信息。
38.根据本技术实施例的应用信息采集系统,至少具有如下有益效果:
39.本技术实施例的应用信息采集系统包括获取模块、导入模块、编译模块和采集模块,获取模块获取初始链接工程、应用程序的应用信息以及应用程序的页面初始信息,导入模块将获取到的应用信息以及页面初始信息导入初始链接工程中,生成动态链接工程,编译模块编译动态链接工程,得到动态链接库,采集模块将动态链接库加载到应用程序中,使得应用程序可以根据动态链接库采集应用程序的页面目标信息。本技术在应用程序开发完成后再链接动态链接库,通过动态链接库采集页面目标信息,无需侵入应用程序的功能代
码,也无需使用操作系统的原生测试框架,能够保证开发人员在开发应用时不需要专门开发对应页面控件的测试脚本,并且按照用户需求快速获取应用的页面初始信息。
40.根据本技术的第三方面实施例的电子设备,包括:
41.至少一个处理器,以及,
42.与所述至少一个处理器通信连接的存储器;其中,
43.所述存储器存储有指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行所述指令时实现如本技术第一方面实施例任一项所述的应用信息采集方法。
44.根据本技术实施例的电子设备,至少具有如下有益效果:通过执行如第一方面实施例所述的应用信息采集方法,获取初始链接工程、应用程序的应用信息以及应用程序的页面初始信息,然后将获取到的应用信息以及页面初始信息导入初始链接工程中,生成动态链接工程,接着编译动态链接工程,得到动态链接库,最后将动态链接库加载到应用程序中,使得应用程序可以根据动态链接库采集应用程序的页面目标信息。本技术在应用程序开发完成后再链接动态链接库,通过动态链接库采集页面目标信息,无需侵入应用程序的功能代码,也无需使用操作系统的原生测试框架,能够保证开发人员在开发应用时不需要专门开发对应页面控件的测试脚本,并且按照用户需求快速获取应用的页面初始信息。
45.根据本技术的第四方面实施例的计算机可读存储介质,包括:
46.所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于执行如本技术第一方面实施例所述的应用信息采集方法。
47.根据本技术实施例的计算机可读存储指令,至少具有如下有益效果:通过执行如第一方面实施例所述的应用信息采集方法,获取初始链接工程、应用程序的应用信息以及应用程序的页面初始信息,然后将获取到的应用信息以及页面初始信息导入初始链接工程中,生成动态链接工程,接着编译动态链接工程,得到动态链接库,最后将动态链接库加载到应用程序中,使得应用程序可以根据动态链接库采集应用程序的页面目标信息。本技术在应用程序开发完成后再链接动态链接库,通过动态链接库采集页面目标信息,无需侵入应用程序的功能代码,也无需使用操作系统的原生测试框架,能够保证开发人员在开发应用时不需要专门开发对应页面控件的测试脚本,并且按照用户需求快速获取应用的页面初始信息。
48.本技术的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实践了解到。
附图说明
49.下面结合附图和实施例对本技术做进一步的说明,其中:
50.图1为本技术一些实施例提供的应用信息采集方法的第一流程图;
51.图2为本技术一些实施例提供的应用信息采集方法中步骤s400的第一流程图;
52.图3为本技术一些实施例提供的应用信息采集方法中步骤s400的第二流程图;
53.图4为本技术一些实施例提供的应用信息采集方法中步骤s400的第三流程图;
54.图5为本技术一些实施例提供的应用信息采集方法的第二流程图;
55.图6为本技术一些实施例提供的应用信息采集方法的第三流程图;
56.图7为本技术另一些实施例提供的应用信息采集方法的具体应用流程图;
57.图8为本技术一些实施例提供的资源分配装置的模块结构框图。
58.附图标记:
59.获取模块100,导入模块200,编译模块300,采集模块400。
具体实施方式
60.下面详细描述本技术的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本技术,而不能理解为对本技术的限制。
61.在本技术的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
62.本技术的描述中,参考术语“一个实施例”、“一些实施例”、“示意性实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
63.目前,可以通过第三方跨平台测试自动化工具来链接操作系统的原生框架,实现获取操作系统设备启动应用页面中的原生元素的信息,如控件名称、控件类型、宽高、坐标等等。但是通过第三方跨平台测试工具返回的页面数据并非控件的全部的属性,而是按自动化测试工具功能输出的自定义数据,自动化测试工具输出的自定义数据可能无法采集用户需要的元素属性数据,从而无法满足一定深度的测试需求。
64.基于此,本技术提出一种应用信息采集方法、系统、电子设备及存储介质,能够获取初始链接工程、应用程序的应用信息以及应用程序的页面初始信息,然后将获取到的应用信息以及页面初始信息导入初始链接工程中,生成动态链接工程,接着编译动态链接工程,得到动态链接库,最后将动态链接库加载到应用程序中,使得应用程序可以根据动态链接库采集应用程序的页面目标信息。本技术在应用程序开发完成后再链接动态链接库,通过动态链接库采集页面目标信息,无需侵入应用程序的功能代码,也无需使用操作系统的原生测试框架,能够保证开发人员在开发应用时不需要专门开发对应页面控件的测试脚本,并且按照用户需求快速获取应用的页面初始信息。
65.需要说明的是,本技术实施例中所针对的操作系统以ios操作系统为例,用于解决ios操作系统为非开源系统所存在的问题。
66.第一方面,本技术实施例提供了一种应用信息采集方法。
67.参照图1,图1为本技术一些实施例提供的一种应用信息采集方法,具体包括步骤:
68.s100,获取初始链接工程、应用程序的应用信息和页面初始信息;
69.s200,将应用信息和页面初始信息导入初始链接工程,生成动态链接工程;
70.s300,编译动态链接工程,得到动态链接库;
71.s400,将动态链接库加载到应用程序,以使应用程序根据动态链接库采集页面目标信息。
72.在步骤s100中,本技术实施例需要获取初始链接工程、应用程序的应用信息和页面初始信息,这里的初始链接工程是按照通常开发原生动态库的方式创建的,本技术实施例中提到的应用信息采集方法,以ios系统为例,首先按照正常开发原生动态库的方式,创建一个ios动态库,也就是本技术实施例提到的初始链接工程,然后获取应用程序的应用信息,这里的应用信息包括应用名称、包名、版本、设备类型、屏幕的宽高、屏幕比例、当前获取的截屏等,为测试页面提供被测试应用的数据,这里的包名为应用包的唯一id,它是每一个ios应用的唯一标识。在实际应用中,可以使用ios原生框架uikit读取mainbundle,通过mainbundle获取应用程序的应用信息,其中uikitk框架提供一系列的类来建立和管理iphone os应用程序的用户界面接口、应用程序对象、事件控制、绘图模型、窗口、视图和用于控制触摸屏等的接口,mainbundle就是应用程序使用的资源,比如代码、图形和音乐等数据在文件系统里的位置。应用程序的页面初始信息为应用程序中的页面元素,在实际应用中,可以通过ios原生的uikit框架,使用uikit框架中keywindow的recursivedescription函数,实现获取被测试的ios应用中的页面元素。
73.在一些实施例中,本技术实施例中的应用程序的页面初始信息,通过以下步骤获取:
74.获取预设应用的页面视图;过滤页面视图中的内部子控件,提取页面视图中的页面初始信息,页面初始信息包括控件信息。应用程序中有许多页面,页面视图用于显示应用程序中文档所有内容在整个页面的分布状况和整个文档在每一页上的位置,并可对其进行编辑操作,达到可视化操作的效果,由于页面元素获取不涉及内部子控件,所以需要过滤页面视图中的内部子控件,然后提取过滤后的页面视图中的页面初始信息。在实际应用中,因为ios应用的运行当前界面的视图都会加载到window中,从window中获取视图的所有元素,这里的window表示浏览器中打开的窗口。本技术实施例中获取的视图是按加入的先后次序和级别排序的,过滤带有前缀内部子控件如uilayoutguide,遍历读取页面每层视图,获取控件的类名、内存地址、控件坐标、用户交互属性以及手势识别等,这里的uilayoutguide是一个虚拟视图,带有前缀的是内部子控件,由于采集数据中是不需要获取内部的子控件的,所以需要过滤它。本技术实施例中的用户交互属性包括用户交互、控件状态、多点触控,其中用户交互表示控件是否启用用户交互,如果没有启用,比如按钮点击就不会触发事件,控件状态表示控件是否启用状态,如果没有启用,控件选择状态、高亮状态都不会显示,多点触控表示支持多个点触摸事件。本技术实施例中的手势识别包括:点击手势、捏合手势、旋转手势、滑动手势、拖动手势、长按手势,其中点击手势处理点击触碰识别,支持单点和多点手势;捏合手势处理手指捏合的比例、速度的识别;旋转手势处理旋转手势,旋转角度、旋转速度的识别;滑动手势处理滑动手势,设置该处理器处理该方向的轻扫,指定该手势处理器只处理几个手指的碰触事件;拖动手势处理拖动手势,最多支持几个手指拖动、最少支持几个手指拖动、拖动手势在指定控件上的位移、拖动手势在指定控件上的拖动速度;长按手势处理长按手势,至少按下多少秒会出发该手势,必须用几根手指按下,指定该长按手势允许用户移动的最大距离。
75.在步骤s200中,将应用信息和页面初始信息导入初始链接工程,生成动态链接工程,也就是将步骤s100中获取到的应用信息以及页面初始信息导入初始链接工程中,得到动态链接工程。
76.在步骤s300中,对动态链接工程进行编译后得到动态链接库。
77.在步骤s400中,将动态链接库加载到应用程序,以使应用程序根据动态链接库采集页面目标信息,这里的页面目标信息是用户根据实际需求获取应用程序中页面元素。
78.在一些实施例中,如图2所示,步骤s400中的“将动态链接库加载到应用程序”,具体包括:
79.s410,基于应用信息确定应用程序所应用的操作系统;
80.s420,获取操作系统的开发工具;
81.s430,通过开发工具将动态链接库加载到预设应用中。
82.在步骤s410中,基于应用程序的应用信息确定应用程序所应用的操作系统,比如android系统或者ios系统。
83.在步骤s420中,获取操作系统对应的开发工具,以ios操作系统为例,通过xcode加载动态库到ios应用中,这里的xcode是运行在ios上的集成开发工具。因为动态链接库编译完成后需要加载到应用程序的进程中,这样才能读取到window中的页面结构,才能基于runtime中的消息机制,动态的对获取到的初始页面信息集成链接到应用程序。本技术实施例中利用runtime中的消息机制,通过ios的在运行时的消息机制runtime来动态获取结构,由于ios的基础框架基本都是objective

c语言(扩充c的面向对象编程语言,objc或oc)实现的,objective

c语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理,在编译的时候并不能决定真正调用哪个函数,只有在真正运行的时候才会根据函数的名称找到对应的函数来调用,在编译阶段,可以调用任何函数,即使这个函数并未实现,只要声明过就不会报错。
84.在步骤s430中,通过开发工具将动态链接库加载到预设应用中,例如,在ios系统中,通过xcode加载动态链接库到应用程序中。
85.在一些实施例中,如图3所示,步骤s400中的“以使应用程序根据动态链接库采集页面目标信息”,具体包括:
86.s440,在动态链接库中建立通讯服务;
87.s450,基于通讯服务采集应用程序中的页面目标信息。
88.在步骤s440中,在动态链接库中建立通讯服务,以使用ios系统的手机为例,ios终端设备作为服务器进行使用,使用第三方组件usbmuxd创建usb(通用串行总线,universal serial bus)服务支持,使用第三方组件gcdasyncsocket创建socket,使用第三方组件创建http(超文本传输协议,hypertext transfer protocol)等方式,可以实现支持多种协议的服务通讯,简化了自定义交互数据的流程,快速高效实现接入开发成本。其中,这里的usbmuxd服务主要用于在usb协议上实现多路tcp连接,将usb通信抽象为tcp通信,gcdasyncsocket是以苹果的多任务处理机制完成的一个异步交互套接字通讯,这里的socket也就是套接字,对网络中不同主机上的应用进程之间进行双向通信的端点的抽象,是应用程序与网络协议根进行通信以及交互的接口。
89.在步骤s450中,基于通讯服务采集应用程序中的页面目标信息,比如在ios应用程序有源代码的情况下,可以通过xcode加载动态链接库到应用程序中,然后直接对应用程序进行打包,编译打包完成后就可以安装直接运行应用程序,通过请求在动态链接库中建立的通讯服务接口协议获取应用程序中的页面元素,也就是页面目标元素。
90.在一些实施例中,如图4所示,步骤s400中的“将动态链接库加载到应用程序”,具体还包括:
91.s460,获取应用程序进行编译和打包后生成的可执行文件;
92.s470,将动态链接库加载至可执行文件中。
93.在步骤s460中,获取应用程序在进行编译和打包后生成的可执行文件。
94.在步骤s470中,将动态链接库加载至可执行文件中,在实际应用中,在ios应用程序没有应用源代码的情况下需要手动注入动态链接库,这时需要使用第三方工具将动态链接库注入应用程序的二进制文件中,这里的二进制文件是把程序数据翻译成机器编码输出到磁盘上存放,在ios应用编译打包后会生成对应的ios系统的二进制可执行文件。
95.在一些实施例中,如图5所示,本技术提到的应用信息采集方法具体还包括步骤:
96.s500,获取控件信息对应的控件变量以及控件变量调用的控件方法;
97.s600,对控件变量以及控件方法进行序列化,生成序列信息。
98.在步骤s500中,本技术实施例需要读取控件属性,此时需要获取初始页面信息中的控件信息,获取控件信息对应的控件变量以及控件变量调用的控件方法,在实际应用中,可以基于ios的原生runtime框架获取当前控制页面的所有函数列表,并且获取当前控制页面的所有变量属性列表,也就是控件变量,实现列举了接收器所有的控件变量以及控件方法,以及它们的类型和值。
99.在步骤s600中,对控件变量以及控件方法进行序列化,生成序列信息,这里的序列信息表示控件变量以及方法经过一定处理,按照一定的格式所排列得到的。比如,将控件变量以及控件方法序列化为json(js对象简谱,javascript object notation)结构,加强可读性,并且方便通过接口发送到业务页面,也就是用户需要查看序列信息的页面,之后业务页面根据对应的字段转换显示成方便理解的控件元素。
100.在一些实施例中,如图6所示,本技术提到的应用信息采集方法具体还包括步骤:
101.s700,获取动态链接库对应的第一签名证书和可执行文件对应的第二签名证书;
102.s800,判断第一签名证书与第二签名证书的签名是否相同;
103.s900,若是,则确定动态链接库加载正常。
104.在步骤s700中,本技术实施例需要对动态链接库进行签名,得到第一签名证书,并且需要对可执行文件进行签名,得到第二签名证书,本技术实施例需要获取第一签名证书以及第二签名证书,这里的第一签名证书和第二签名证书为应用程序的开发证书。
105.在步骤s800中,判断第一签名证书与第二签名证书的签名是否相同,若不相同,则说明动态链接库没有加载正常。
106.在步骤s900中,若第一签名证书与第二签名的签名相同,则确定动态链接库加载正常,由于未越狱设备必须为同一证书签名,所以第一签名证书和第二签名证书必须都是同一证书的签名后才能正常运行。
107.在一些实施例中,如图7所示,在实际应用中,首先创建ios动态链接库,然后读取应用程序的基础信息,接着从内存中的window获取页面视图中的所有元素,然后基于runtime获取元素的函数列表和属性,创建通讯服务后导出数据,最后进行动态库连接,可以测试应用程序的有源代码链接或者测试应用程序的安装包链接后就可以通过应用程序获取到页面的页面目标信息。
108.在本技术实施例中,获取初始链接工程、应用程序的应用信息以及应用程序的页面初始信息,然后将获取到的应用信息以及页面初始信息导入初始链接工程中,生成动态链接工程,接着编译动态链接工程,得到动态链接库,最后将动态链接库加载到应用程序中,使得应用程序可以根据动态链接库采集应用程序的页面目标信息。本技术在应用程序开发完成后再链接动态链接库,通过动态链接库采集页面目标信息,无需侵入应用程序的功能代码,也无需使用操作系统的原生测试框架,能够保证开发人员在开发应用时不需要专门开发对应页面控件的测试脚本,并且按照用户需求快速获取应用的页面初始信息。
109.第二方面,本技术实施例还提供了用于执行第一方面实施例中提到的应用信息采集方法的应用信息采集系统。
110.在一些实施例中,如图8所示,应用信息采集系统包括获取模块100、导入模块200、编译模块300和采集模块400,获取模块100获取初始链接工程、应用程序的应用信息以及应用程序的页面初始信息,导入模块200将获取到的应用信息以及页面初始信息导入初始链接工程中,生成动态链接工程,编译模块300编译动态链接工程,得到动态链接库,采集模块400将动态链接库加载到应用程序中,使得应用程序可以根据动态链接库采集应用程序的页面目标信息。本技术在应用程序开发完成后再链接动态链接库,通过动态链接库采集页面目标信息,无需侵入应用程序的功能代码,也无需使用操作系统的原生测试框架,能够保证开发人员在开发应用时不需要专门开发对应页面控件的测试脚本,并且按照用户需求快速获取应用的页面初始信息。
111.第三方面,本技术实施例还提供了一种电子设备。
112.在一些实施例中,电子设备包括:至少一个处理器,以及与至少一个处理器通信连接的存储器;其中,存储器存储有指令,指令被至少一个处理器执行,以使至少一个处理器执行指令时实现本技术实施例中任一项应用信息采集方法。
113.处理器和存储器可以通过总线或者其他方式连接。
114.存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如本技术实施例描述的应用信息采集方法。处理器通过运行存储在存储器中的非暂态软件程序以及指令,从而实现上述的应用信息采集方法。
115.存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储执行上述应用信息采集方法。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,比如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
116.实现上述的应用信息采集方法所需的非暂态软件程序以及指令存储在存储器中,当被一个或者多个处理器执行时,执行上述第一方面实施例中提到的应用信息采集方法。
117.第四方面,本技术实施例还提供了计算机可读存储介质。
118.在一些实施例中,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令用于执行第一方面实施例中提到的应用信息采集方法。
119.在一些实施例中,该存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个控制处理器执行,比如,被上述电子设备中的一个处理器执行,可使得上述一个
或多个处理器执行上述应用信息采集方法。
120.以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
121.本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd

rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
122.上面结合附图对本技术实施例作了详细说明,但是本技术不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本技术宗旨的前提下作出各种变化。此外,在不冲突的情况下,本技术的实施例及实施例中的特征可以相互组合。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1