本申请涉及数据处理,具体为一种基于uniapp的多端自动数据采集装置。
背景技术:
1、uniapp,一种基于vue.js的代码多端开发框架;
2、rollup.js一种javascript代码打包工具
3、bundle多个javascript文件与资源打包成一个文件的过程
4、sdk,software development kit,软件开发工具包
5、api,application programming interface,应用程序编程接口
6、目前针对uniapp框架一码多端的特点,需要在不同端进行数据采集,传统方案则需要编写多套数据采集sdk,比如app端需要android、ios两套sdk,然后再根据uniapp插件规范编写统一采集接口函数,再以uniapp标准插件的形式接入应用,以此来适用不用端的需求,如果新增小程序端,则还需要继续提供小程序端的数据采集接入方式,这种方式效率低下且成本高昂。虽然现有技术可以开发基于http协议的openapi适用于多端,但是无法实现自动采集,需要接入方在各端都调用提供的公共api,造成接入成本增加效率低下,且仍需要人工约定字段与数据格式。
7、因此现有技术存在的缺点为:基于uniapp插件规范编写的数据自动采集装置需要编写多套代码,且多套代码编写过程中,需要人工规范统一数据格式和标准化,效率低且容易造成数据一致性差,最终影响数据的准确性和可用性。
技术实现思路
1、本申请的目的在于提供一种基于uniapp的多端自动数据采集装置,以解决上述背景技术中提出的问题。
2、为实现上述目的,本申请提供如下技术方案:一种基于uniapp的多端自动数据采集装置,包括:
3、统一api模块,结合uniapp多端能力,使用javascript对象/函数统一各端采集api;
4、区分模块,自动采集多端标示与终端品牌,用于区分不同端数据;
5、自动采集模块,根据不同端特点,自动采集应用启动、页面事件与全局异常事件;
6、函数提供模块,提供公共参数注入函数与用户自定义上报函数;
7、数据处理模块,对采集数据进行加密、本地存储、服务器上报;
8、打包模块,打包成通用javascript模块,通过一次引用安装,实现多端数据采集。
9、优选的,所述统一各端采集api包括:
10、使用wkapi作为对象名称,统一多端接口调用对象;
11、使用getnetworktype函数统一采集多端网络信息接口函数;
12、使用getsysteminfosync函数统一多端获取系统信息接口函数;
13、使用setstoragesync函数统一多端设置缓存接口函数;
14、使用getstoragesync函数统一多端获取缓存接口函数;
15、使用request函数统一多端网络请求接口函数。
16、优选的,所述区分模块对不同端数据区分步骤如下:
17、步骤1、通过不同端全局对象的差异,可以区分当前数据采集平台为哪一端,为使用方减少接入的工作量;
18、步骤2、分别通过getsysteminfosync/getnetworktype函数获取当前设备信息、网络信息与第一步获取的端信息共同插入全局公共字段global中,为后续采集的每条数据打上global标示。
19、优选的,所述自动采集模块采集的事件包括:
20、使用config函数统一多端数据采集装置初始化,即启动事件;
21、使用onload函数统一采集多端页面加载事件,并采集页面参数;
22、使用onload函数统一采集多端页面加载事件,并采集页面参数;
23、使用onshow函数统一采集多端页面显示事件;
24、使用onhide函数统一采集多端页面隐藏事件;
25、使用onappshow函数统一采集多端应用切换至前台事件;
26、使用onapphide函数统一采集多端应用切换至后台事件;
27、使用onerror函数统一采集多端应用异常事件。
28、优选的,所述函数提供模块提供的函数包括:
29、公共参数注入函数,为了让多端采集装置/sdk使用者可以自定义全局采集字段,提供了updateruntimebzparam多端函数,可对全局事件插入统一参数;
30、用户自定义上报函数,提供多端自定义采集函数report可供使用者在不同端主动上报需要采集的端数据。
31、优选的,所述数据处理模块的处理步骤为:在数据采集完毕后,对其进行rsa非对称加密,用于防止数据被截获而泄露用户隐私,并根据当前端所在设备网络情况,对采集的数据进行本地缓存,或者同步至服务器。
32、优选的,所述打包模块的处理步骤为:使rollup.js工具混淆代码并打包成javascript模块bundler,使用者通过引入一份javascript文件即可完全接入多端数据采集装置。
33、与现有技术相比,本申请的有益效果是:
34、1)本发明一套代码适用多端,无需针对多端做额外的开发工作,大大减少了开发的工作量,并且一套代码在多端采集后的数据具有天然的一致性,无需人工约定对齐多端字段名及数据格式,减少心智负担,显著降低成本、提高效率。
35、2)通过集成本发明的装置,用户可以基于在app、小程序、h5和快应用等多个端口上进行数据自动采集,无需进行多端编码,具有一次接入,多端适用的特点,并将自动采集后的数据进行统一处理和分析。该方法和装置能够提高数据采集的效率和一致性,为用户提供全面的数据分析和决策支持。
1.一种基于uniapp的多端自动数据采集装置,其特征在于,包括:
2.根据权利要求1所述的一种基于uniapp的多端自动数据采集装置,其特征在于:所述统一各端采集api包括:
3.根据权利要求1所述的一种基于uniapp的多端自动数据采集装置,其特征在于:所述区分模块对不同端数据区分步骤如下:
4.根据权利要求1所述的一种基于uniapp的多端自动数据采集装置,其特征在于:所述自动采集模块采集的事件包括:
5.根据权利要求1所述的一种基于uniapp的多端自动数据采集装置,其特征在于:所述函数提供模块提供的函数包括:
6.根据权利要求1所述的一种基于uniapp的多端自动数据采集装置,其特征在于:所述数据处理模块的处理步骤为:在数据采集完毕后,对其进行rsa非对称加密,用于防止数据被截获而泄露用户隐私,并根据当前端所在设备网络情况,对采集的数据进行本地缓存,或者同步至服务器。
7.根据权利要求1所述的一种基于uniapp的多端自动数据采集装置,其特征在于:所述打包模块的处理步骤为:使rollup.js工具混淆代码并打包成javascript模块bundler,使用者通过引入一份javascript文件即可完全接入多端数据采集装置。