CN110750460A - 浏览器兼容性的检测方法、装置、设备及可读存储介质 - Google Patents
浏览器兼容性的检测方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN110750460A CN110750460A CN201911020265.7A CN201911020265A CN110750460A CN 110750460 A CN110750460 A CN 110750460A CN 201911020265 A CN201911020265 A CN 201911020265A CN 110750460 A CN110750460 A CN 110750460A
- Authority
- CN
- China
- Prior art keywords
- browser
- compatibility
- current
- preset
- incompatible
- 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/3604—Software analysis for verifying properties of programs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及金融科技技术领域,公开了一种浏览器兼容性的检测方法、装置、设备及可读存储介质。该方法包括:在侦测到当前浏览器启动视频录制功能时,通过所述当前浏览器的预设接口获取第一目标信息;对所述第一目标信息进行解析,得到第一参数信息;将所述第一参数信息与预设不兼容浏览器名单进行匹配,得到匹配结果,根据所述匹配结果确定当前浏览器是否为不兼容浏览器。本发明能够实现浏览器兼容性的智能检测,以及时检测出浏览器是否支持视频录制功能。
Description
技术领域
本发明涉及金融科技(Fintech)技术领域,尤其涉及一种浏览器兼容性的检测方法、装置、设备及可读存储介质。
背景技术
随着计算机技术的发展,越来越多的技术(大数据、分布式、区块链Blockchain、人工智能等)应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,但由于金融行业的安全性、实时性要求,也对技术提出了更高的要求。
目前,很多web页面中提供了视频录制的功能,在web页面中调用摄像头进行视频录制时,通常采用以下2种方式:(1)使用getUserMedia API(用户媒体获取接口)读取摄像头数据,然后使用MediaRecorder API(媒体记录接口)将视频数据录制保存到设备中;(2)使用input(输入)标签唤起摄像头进行视频录制。两种方式的兼容性均较差,其中,第(1)种方式只能支持PC(Personal Computer,个人计算机)端中某些特定类型和版本的浏览器,对移动端(如iOS***和安卓***的手机)都不支持;第(2)种方式的兼容性比第(1)种方式稍好,可支持iOS(由苹果公司开发的移动操作***)***,但对Android(安卓)***的部分浏览器不支持。
在不支持的浏览器中,用户点击视频录制按钮无任何反应,浏览器也不会告知用户不支持,会导致用户卡在视频录制环节,无法完成整个操作流程。因此,亟需一种浏览器兼容性的检测方法,以及时检测出浏览器是否支持视频录制功能,进而在浏览器不支持时,及时提醒用户更换浏览器。
发明内容
本发明的主要目的在于提供一种浏览器兼容性的检测方法、装置、设备及可读存储介质,旨在实现浏览器兼容性的智能检测,以及时检测出浏览器是否支持视频录制功能。
为实现上述目的,本发明提供一种浏览器兼容性的检测方法,所述浏览器兼容性的检测方法包括:
在侦测到当前浏览器启动视频录制功能时,通过所述当前浏览器的预设接口获取第一目标信息;
对所述第一目标信息进行解析,得到第一参数信息;
将所述第一参数信息与预设不兼容浏览器名单进行匹配,得到匹配结果,根据所述匹配结果确定当前浏览器是否为不兼容浏览器。
可选地,所述对所述第一目标信息进行解析,得到第一参数信息的步骤包括:
将预设关键字与所述第一目标信息进行匹配,得到当前浏览器对应的***类型和浏览器名称;
根据所述***类型和所述浏览器名称确定待匹配参数,并根据所述浏览器名称、所述待匹配参数和预设映射关系确定待匹配关键字;
将所述待匹配关键字与所述第一目标信息进行匹配,得到所述待匹配参数对应的待匹配参数信息,其中,所述第一参数信息包括***类型、浏览器名称和待匹配参数信息。
可选地,所述根据所述***类型和所述浏览器名称确定待匹配参数的步骤包括:
根据浏览器名称判断当前浏览器属于***浏览器还是第三方浏览器;
若当前浏览器属于第三方浏览器,则确定待匹配参数为浏览器版本号;
若当前浏览器属于***浏览器,则检测所述***类型为iOS***还是为Android***;
若所述***类型为iOS***,则确定待匹配参数为浏览器版本号;
若所述***类型为Android***,则确定待匹配参数为浏览器内核及版本号、浏览器版本号、***版本号和机型品牌。
可选地,所述浏览器兼容性的检测方法还包括:
接收测试端发送的基于不兼容浏览器测试获得的第二目标信息;
对所述第二目标信息进行解析,得到第二参数信息;
根据所述第二参数信息生成所述预设不兼容浏览器名单。
可选地,所述浏览器兼容性的检测方法还包括:
在接收到用户端浏览器的初次上报信息后,监测第一预设时间内是否接收到用户端浏览器的二次上报信息;
若第一预设时间内未接收到用户端浏览器的二次上报信息,则获取所述用户端浏览器对应的第三参数信息,并将所述第三参数信息存储至预设数据库中;
定期从所述预设数据库中获取第二预设时间内的第三参数信息,并进行统计,根据统计结果确定疑似不兼容浏览器名单;
将所述疑似不兼容浏览器名单发送至预设测试端,以使得所述预设测试端检测所述疑似不兼容浏览器名单中是否存在不兼容浏览器;
接收所述预设测试端返回的检测结果,并根据所述检测结果更新所述预设不兼容浏览器名单。
可选地,所述根据所述匹配结果确定当前浏览器是否为不兼容浏览器的步骤之后,还包括:
若确定当前浏览器为不兼容浏览器,则生成更换浏览器的提示信息,并在当前浏览器中进行显示提示。
可选地,所述生成更换浏览器的提示信息,并在当前浏览器中进行显示提示的步骤之前,还包括:
根据所述浏览器名称判断当前浏览器是否属于自主开发浏览器;
若当前浏览器不属于自主开发浏览器,则执行步骤:生成更换浏览器的提示信息,并在当前浏览器中进行显示提示;
若当前浏览器属于自主开发浏览器,则根据所述***类型获取对应的兼容性解决方法;
根据所述兼容性解决方法生成对应的解决方法提示信息,并在当前浏览器中进行显示提示。
此外,为实现上述目的,本发明还提供一种浏览器兼容性的检测装置,所述浏览器兼容性的检测装置包括:
第一获取模块,用于在侦测到当前浏览器启动视频录制功能时,通过所述当前浏览器的预设接口获取第一目标信息;
第一解析模块,用于对所述第一目标信息进行解析,得到第一参数信息;
名单匹配模块,用于将所述第一参数信息与预设不兼容浏览器名单进行匹配,得到匹配结果,根据所述匹配结果确定当前浏览器是否为不兼容浏览器。
此外,为实现上述目的,本发明还提供一种浏览器兼容性的检测设备,所述浏览器兼容性的检测设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的浏览器兼容性的检测程序,所述浏览器兼容性的检测程序被所述处理器执行时实现如上所述的浏览器兼容性的检测方法的步骤。
此外,为实现上述目的,本发明还提供一种可读存储介质,所述可读存储介质上存储有浏览器兼容性的检测程序,所述浏览器兼容性的检测程序被处理器执行时实现如上所述的浏览器兼容性的检测方法的步骤。
本发明提供一种浏览器兼容性的检测方法、装置、设备及可读存储介质,在侦测到当前浏览器启动视频录制功能时,通过当前浏览器的预设接口获取第一目标信息;然后对第一目标信息进行解析,得到第一参数信息;进而将第一参数信息与预设不兼容浏览器名单进行匹配,得到匹配结果,根据匹配结果确定当前浏览器是否为不兼容浏览器。通过上述方式,可实现浏览器兼容性的智能检测,以及时检测出浏览器是否支持视频录制功能,进而在浏览器不支持时及时提醒用户更换浏览器,避免用户卡在视频录制环节、无法完成整个操作流程,可提升用户的使用体验。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的设备结构示意图;
图2为本发明浏览器兼容性的检测方法第一实施例的流程示意图;
图3为本发明浏览器兼容性的检测装置第一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的设备结构示意图。
本发明实施例浏览器兼容性的检测设备可以是智能手机,也可以是PC(PersonalComputer,个人计算机)、平板电脑、便携计算机等终端设备。
如图1所示,该浏览器兼容性的检测设备可以包括:处理器1001,例如CPU,通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如Wi-Fi接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的浏览器兼容性的检测设备结构并不构成对浏览器兼容性的检测设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作***、网络通信模块、用户接口模块以及浏览器兼容性的检测程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端,与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的浏览器兼容性的检测程序,并执行以下浏览器兼容性的检测方法的各个步骤。
基于上述硬件结构,提出本发明浏览器兼容性的检测方法的各实施例。
本发明提供一种浏览器兼容性的检测方法。
参照图2,图2为本发明浏览器兼容性的检测方法第一实施例的流程示意图。
在本实施例中,该浏览器兼容性的检测方法包括:
步骤S10,在侦测到当前浏览器启动视频录制功能时,通过所述当前浏览器的预设接口获取第一目标信息;
本实施例的浏览器兼容性的检测方法是由浏览器兼容性的检测设备实现的,该设备以web前端服务器为例进行说明。在本实施例中,用户在用户端的当前浏览器中点击视频录制按钮时,当前浏览器在启动视频录制功能的同时,会向web前端服务器发送启动视频录制功能的上报信息,以告知web前端服务器其已启动视频录制功能,此时,web前端服务器在侦测到当前浏览器启动视频录制功能时,通过当前浏览器的预设接口获取第一目标信息。其中,预设接口为navigator API(导航器接口),第一目标信息为当前浏览器的userAgent(用户代理)信息。当然,可以理解的是,在具体实施例中,“通过当前浏览器的预设接口获取第一目标信息”这一步骤的触发时机,也可以是侦测到当前浏览器被启动时,或在接收到当前浏览器的初次上报信息后、但未在第一预设时间内接收到当前浏览器的二次上报信息时等。
步骤S20,对所述第一目标信息进行解析,得到第一参数信息;
在获取到第一目标信息后,对第一目标信息进行解析,得到第一参数信息。具体的,步骤S20包括:
步骤a1,将预设关键字与所述第一目标信息进行匹配,得到当前浏览器对应的***类型和浏览器名称;
先将预设关键字与第一目标信息进行匹配,得到当前浏览器对应的***类型和浏览器名称。其中,预设关键字包括预设***关键字和预设浏览器关键字,***关键字包括但不限于iPhone(苹果手机)、iPad(苹果平板电脑)、iPod(苹果音乐播放器)、Android(安卓),预设浏览器关键字可以为各种浏览器的英文名称或简称等,如safari(苹果浏览器)、UC(UC浏览器)、***(百度浏览器)等。
在匹配过程中,可根据预设***关键字与第一目标信息的匹配结果确定***类型,例如,若根据预设***关键字从第一目标信息中匹配出“iPhone”或“iPad”或“iPod”,则可确定***类型为iOS(由苹果公司开发的移动操作***)***;若从第一目标信息中匹配出“Android”,则可确定***类型为Android***。根据预设浏览器关键字与第一目标信息的匹配结果确定浏览器名称,例如,若根据预设浏览器关键字从第一目标信息匹配出“safari”,则得到浏览器名称为safari。
步骤a2,根据所述***类型和所述浏览器名称确定待匹配参数,并根据所述浏览器名称、所述待匹配参数和预设映射关系确定待匹配关键字;
在匹配得到***类型和浏览器名称后,根据***类型和浏览器名称确定待匹配参数,并根据浏览器名称、待匹配参数和预设映射关系确定待匹配关键字。其中,预设映射关系包括浏览器名称、待匹配参数与待匹配关键字之间的映射关系。
步骤“根据所述***类型和所述浏览器名称确定待匹配参数”包括:
步骤a21,根据浏览器名称判断当前浏览器属于***浏览器还是第三方浏览器;
步骤a22,若当前浏览器属于第三方浏览器,则确定待匹配参数为浏览器版本号;
步骤a23,若当前浏览器属于***浏览器,则检测所述***类型为iOS***还是为Android***;
步骤a231,若所述***类型为iOS***,则确定待匹配参数为浏览器版本号;
步骤a232,若所述***类型为Android***,则确定待匹配参数为浏览器内核及版本号、浏览器版本号、***版本号和机型品牌。
待匹配参数的确定过程为:先根据浏览器名称判断当前浏览器属于***浏览器还是第三方浏览器,具体的,可以预先设定一常见浏览器名单,包括浏览器名称和浏览器类型,其中,浏览器类型包括***浏览器和第三方浏览器,例如iPhone的safari、小米浏览器(小米手机的一浏览器)、华为浏览器(华为手机的一浏览器),设定为***浏览器;UC、***等,设定为第三方浏览器。然后,根据浏览器名称和该预设的常见浏览器名单判断当前浏览器是否属于***浏览器。
若判定当前浏览器属于第三方浏览器,则确定待匹配参数为浏览器版本号。这是因为:当用户使用iOS移动设备中第三方浏览器APP时,若第三方浏览器APP申请开启了摄像头、麦克风使用权限,即APP代码项目中的info.plist(用于提供应用在运行期的一些配置)有如下代码:
.NSMicrophoneUsageDescription
.NSCameraUsageDescription
则第三方浏览器的web页面中使用input标签就能正常调起***摄像头进行拍摄。但若第三方浏览器APP没有开启摄像头、麦克风权限,info.plist文件中没有以上两行代码,web页面调用input标签时会导致第三方浏览器APP闪退。目前无法直接检测到浏览器APP是否有申请摄像头、麦克风权限,经实验发现,由于某一第三方浏览器APP的某个版本,如果没有申请摄像、头麦克风权限,导致APP闪退,那么所有iOS***的终端安装了同样类型和版本的第三方浏览器APP都会发生闪退,因为安装包都是同一个,所以APP代码都是一致的。也就是说,相同类型和版本的第三方浏览器APP在不同手机的表现情况是一致的。因此,在获取到***类型,并根据浏览器名称确定为第三方浏览器后,需解析的参数(即待匹配参数)只包括浏览器版本即可。
若判定当前浏览器属于***浏览器,则需进一步根据***类型来确定待匹配参数,具体的,检测***类型为iOS***还是为Android***,若***类型为iOS***,则确定待匹配参数为浏览器版本号;若***类型为Android***,则确定待匹配参数为浏览器内核及版本号、浏览器版本号、***版本号和机型品牌。
需要说明的是,若当前浏览器属于***浏览器,且***类型为iOS***时,也可以无需确定待匹配参数,将浏览器名称和***类型作为第一参数信息,与预设不兼容浏览器名单进行匹配。
此外,还需要说明的是,若当前浏览器属于***浏览器,且***类型为Android***时,则确定待匹配参数为浏览器内核及版本号、浏览器版本号、***版本号和机型品牌。这是因为:目前各个手机厂商都有自己的Android***,比如小米的MIUI、华为的EMUI等,不同移动设备厂商的安卓***,都会对***浏览器内核进行一些个性化改造,所以使用Android***浏览器访问web页面进行视频录制时,会与安卓手机的ROM(Read-OnlyMemory,只读存储器)包版本有关,使用同一个ROM包的手机,其***浏览器表现情况一定是一致的。但目前无法直接获取到手机ROM包的相关信息,无法直接进行比较。通过解析第一目标信息(即userAgent信息),可以得到浏览器内核及版本号、浏览器软件名及版本号、Android***版本号、机型品牌、机型编号、设备语言等信息。这里需要取浏览器内核及版本号、浏览器软件名及版本号、Android***版本号、机型品牌来进行对比,因为同一个ROM包在不同的设备上安装,浏览器内核及版本号、浏览器软件名及版本号、Android***版本号这几个参数一定是一致的,而同品牌Android设备都会使用同厂商的ROM包,所以机型品牌也是重要比对因素。因此,在获取到***类型,并根据浏览器名称确定为第三方浏览器后,需解析的参数(即待匹配参数)还需包括浏览器内核及版本号、浏览器版本号、***版本号和机型品牌。
步骤a3,将所述待匹配关键字与所述第一目标信息进行匹配,得到所述待匹配参数对应的待匹配参数信息,其中,所述第一参数信息包括***类型、浏览器名称和待匹配参数信息。
在确定得到待匹配关键字之后,将待匹配关键字与第一目标信息进行匹配,得到待匹配参数对应的待匹配参数信息,其中,第一参数信息包括***类型、浏览器名称和待匹配参数信息。
步骤S30,将所述第一参数信息与预设不兼容浏览器名单进行匹配,得到匹配结果,根据所述匹配结果确定当前浏览器是否为不兼容浏览器。
在解析得到第一参数信息之后,将第一参数信息与预设不兼容浏览器名单进行匹配,得到匹配结果,根据匹配结果确定当前浏览器是否为不兼容浏览器。其中,预设不兼容浏览器名单是预先建立的,其具体的创建过程可参照下述第二实施例,此处不作赘述。需要说明的是,由于同一浏览器在不同终端中兼容性不同,且同一浏览器的版本不同也会影响兼容性,因此,该预设不兼容浏览器名单并不仅仅只包括浏览器名称,还可以包括***类型、浏览器版本、浏览器内核及版本号、***版本号和机型品牌等信息。
本发明实施例提供一种浏览器兼容性的检测方法,在侦测到当前浏览器启动视频录制功能时,通过当前浏览器的预设接口获取第一目标信息;然后对第一目标信息进行解析,得到第一参数信息;进而将第一参数信息与预设不兼容浏览器名单进行匹配,得到匹配结果,根据匹配结果确定当前浏览器是否为不兼容浏览器。通过上述方式,可实现浏览器兼容性的智能检测,以及时检测出浏览器是否支持视频录制功能,进而在浏览器不支持时及时提醒用户更换浏览器,避免用户卡在视频录制环节、无法完成整个操作流程,可提升用户的使用体验。
进一步的,基于上述第一实施例,提出本发明浏览器兼容性的检测方法的第二实施例。
在本实施例中,在步骤S10之前,该浏览器兼容性的检测方法还包括:
步骤A,接收测试端发送的基于不兼容浏览器测试获得的第二目标信息;
在本实施例提供了预设不兼容浏览器名单的生成过程。具体的,测试人员可以在不同***的测试端中安装各种类型和版本的浏览器,然后在浏览器中打开一预设web网页,点击视频录制按钮,查看是否有闪退现象,若有闪退现象,则认为该浏览器不兼容,或者点击录制按钮后无反应,不会进入录制程序,也认为该浏览器不兼容,此时,通过浏览器的预设接口(为navigator API)获取第二目标信息,其中,第二目标信息为不兼容浏览器的userAgent信息;然后将第二目标信息发送至web前端服务器,对应的,web前端服务器会接收到测试端发送的基于不兼容浏览器测试获得的第二目标信息。
步骤B,对所述第二目标信息进行解析,得到第二参数信息;
步骤C,根据所述第二参数信息生成所述预设不兼容浏览器名单。
然后,对第二目标信息进行解析,得到第二参数信息,具体的解析过程与第一参数信息的解决过程相一致,可参照上述第一实施例,此处不作赘述。在得到第二参数信息之后,根据第二参数信息生成预设不兼容浏览器名单。
通过上述方式,预先构建不兼容浏览器名单,可便于检测用户端浏览器是否兼容,进而在浏览器不兼容时及时提醒用户,避免用户卡在视频录制环节、无法完成整个操作流程。
进一步的,由于许多浏览器的历史版本,已经找不到对应的安装包,无法完整地自行测试找出所有不支持的浏览器,也就是说,预设不兼容浏览器名单并不能保证全面性。同时,厂商的***浏览器和第三方浏览器版本都会持续更新,也会不断有新的浏览器和新的手机进入市场,针对所有浏览器都进行测试耗费成本较高,需要一个低成本且能够不断更新不兼容浏览器名单的方法。对此,基于上述第一实施例和第二实施例,提出本发明浏览器兼容性的检测方法的第三实施例。
在本实施例中,该浏览器兼容性的检测方法还包括:
步骤D,在接收到用户端浏览器的初次上报信息后,监测第一预设时间内是否接收到用户端浏览器的二次上报信息;
在本实施例中,用户在用户端的浏览器中点击视频录制按钮时,浏览器在向web前端服务器发送启动视频录制功能的上报信息的同时,还会向web前端服务器上报当前用户ID(标识号)和浏览器版本号,在视频录制完成,浏览器在接收到用户录制的视频时,会再上报当前用户ID和录制好的视频。也就是说,如果浏览器支持视频录制功能,在启动视频录制功能后,web前端服务器会接收到两次上报信息,记为初次上报信息(即指上述当前用户ID和浏览器版本号)和二次上报信息(即指上述当前用户ID和录制好的视频)。因此,可以通过检测在接收到初次上报信息后的第一预设时间内是否接收到二次上报信息,来获取疑似不兼容浏览器,然后进一步对疑似不兼容浏览器进行测试确认,进而更新预设不兼容浏览器名单。具体的,在接收到用户端浏览器的初次上报信息后,监测第一预设时间内是否接收到用户端浏览器的二次上报信息。其中,第一预设时间可以根据实际需要进行设定,此处不作具体限定。
步骤E,若第一预设时间内未接收到用户端浏览器的二次上报信息,则获取所述用户端浏览器对应的第三参数信息,并将所述第三参数信息存储至预设数据库中;
若监测到第一预设时间内未接收到用户端浏览器的二次上报信息,则获取所述用户端浏览器对应的第三参数信息,并将所述第三参数信息存储至预设数据库中。即,通过用户端浏览器的预设接口(为navigator API)获取第三目标信息,然后对第三目标信息进行解析,得到第三参数信息。具体的解析过程与第一参数信息的解决过程相一致,可参照上述第一实施例,此处不作赘述。
步骤F,定期从所述预设数据库中获取第二预设时间内的第三参数信息,并进行统计,根据统计结果确定疑似不兼容浏览器名单;
然后,定期从预设数据库中获取第二预设时间内的第三参数信息,并进行统计,根据统计结果确定疑似不兼容浏览器名单。其中,定期可以设定为每隔一周或一个月,对应的第二预设时间可设定为距当前时间一周或一个月。在对第二预设时间内的第三参数信息进行统计时,需分别统计各类型各版本的浏览器在不同***中未二次上报的次数,然后按次数从多到少的顺序进行排序,进而根据统计结果取排序前N名的浏览器,作为疑似不兼容浏览器名单。其中,N的取值可根据实际需要设定,可以为一预设值,也可以为总浏览器数量*预设百分比。需要说明的是,由于用户在录制过程中,若中途中断录制,也会造成未二次上报的情况,因此,在确定疑似不兼容浏览器名单时需进行统计取其中一部分浏览器,不可取第三参数信息中涉及的全部浏览器,以避免不必要的测试,节省后续的测试更新时间。
步骤G,将所述疑似不兼容浏览器名单发送至预设测试端,以使得所述预设测试端检测所述疑似不兼容浏览器名单中是否存在不兼容浏览器;
步骤H,接收所述预设测试端返回的检测结果,并根据所述检测结果更新所述预设不兼容浏览器名单。
最后,将疑似不兼容浏览器名单发送至预设测试端,以使得预设测试端检测疑似不兼容浏览器名单中是否存在不兼容浏览器。其中,预设测试端的检测过程可通过人工按疑似不兼容浏览器名单中信息选择对应***的终端安装对应类型和版本的浏览器,安装完成后,检测在疑似不兼容浏览器中点击视频录制按钮时是否会出现闪退情况,以判断疑似不兼容浏览器是否为不兼容浏览器,或者点击视频录制按钮是否进入录制程序,若无反应也认为该浏览器不兼容,进而预设测试端在测试完成后,会返回对应的检测结果至web前端服务器,此时,web前端服务器在接收到预设测试端返回的检测结果时,根据检测结果更新预设不兼容浏览器名单。
在本实施例中,通过采集用户端浏览器的数据,定期获取疑似不兼容浏览器名单,进而基于疑似不兼容浏览器名单来更新预设不兼容浏览器名单,解决了不兼容浏览器名单持续更新的难题。同时,通过上述方式,缩小了后期更新测试浏览器兼容性的范围,可降低不兼容浏览器的测试更新成本。
进一步的,基于上述第一实施例和第二实施例,提出本发明浏览器兼容性的检测方法的第四实施例。
在本实施例中,在步骤S30之后,该浏览器兼容性的检测方法还包括:
步骤I,若确定当前浏览器为不兼容浏览器,则生成更换浏览器的提示信息,并在当前浏览器中进行显示提示。
在本实施例中,若确定当前浏览器为不兼容浏览器,则生成更换浏览器的提示信息,并在当前浏览器中进行显示提示,以告知用户该浏览器不支持视频录制功能,及时提醒用户更新浏览器,避免用户卡在视频录制环节,无法完成整个操作流程。
进一步,由于开发者自主开发的浏览器,其拥有浏览器的代码修改权限,此时,可提示采用对应的代码修改方法,即可解决浏览器不兼容的问题。具体的,在上述步骤“生成更换浏览器的提示信息,并在当前浏览器中进行显示提示”之前,该浏览器兼容性的检测方法还可以包括:
步骤J,根据所述浏览器名称判断当前浏览器是否属于自主开发浏览器;
在本实施例中,若确定当前浏览器为不兼容浏览器,可以先根据浏览器名称判断当前浏览器是否属于自主开发浏览器,具体的,可通过检测当前浏览器的浏览器名称是否在预设常见浏览器名单中,来判断当前浏览器是否属于自主开发浏览器。
若当前浏览器不属于自主开发浏览器,则执行步骤:生成更换浏览器的提示信息,并在当前浏览器中进行显示提示;
步骤K,若当前浏览器属于自主开发浏览器,则根据所述***类型获取对应的兼容性解决方法;
步骤L,根据所述兼容性解决方法生成对应的解决方法提示信息,并在当前浏览器中进行显示提示。
若当前浏览器不属于自主开发浏览器,则无法通过修改代码的方式实现兼容,此时,则直接生成更换浏览器的提示信息,并在当前浏览器中进行显示提示,以告知用户该浏览器不支持视频录制功能,及时提醒用户更新浏览器。
若当前浏览器属于自主开发浏览器,则根据***类型获取对应的兼容性解决方法,然后,根据兼容性解决方法生成对应的解决方法提示信息,并在当前浏览器中进行显示提示,从而使得用户根据解决方法提示信息,对自主开发浏览器进行修改,即可使得浏览器支持视频录制功能。
例如,如果是在开发者自主开发的iOS浏览器APP中,有权限可以修改APP代码的话,可以提示用户在浏览器APP代码项目的info.plist文件(用于提供应用在运行期的一些配置)中增加如下代码,以申请摄像头、麦克风权限,避免因浏览器不兼容导致闪退:
.NSMicrophoneUsageDescription
.NSCameraUsageDescription
iOS浏览器APP增加了上述代码后,浏览器中的web页面就可以正常使用input标签唤起摄像头。
再例如,如果是在开发者自主开发的Android浏览器APP中,有权限可以修改APP代码的话,则需要在APP中按照如下方式进行兼容性开发:
在Manifest.xml文件(为整个应用程序的信息描述文件)中增加申请以下权限:
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
然后在webviewChromeClient中重写方法响应<input type="file">,浏览器中的web页面即可通过input标签唤起摄像头。
本发明还提供一种浏览器兼容性的检测装置。
参照图3,图3为本发明浏览器兼容性的检测装置第一实施例的功能模块示意图。
如图3所示,所述浏览器兼容性的检测装置包括:
第一获取模块10,用于在侦测到当前浏览器启动视频录制功能时,通过所述当前浏览器的预设接口获取第一目标信息;
第一解析模块20,用于对所述第一目标信息进行解析,得到第一参数信息;
名单匹配模块30,用于将所述第一参数信息与预设不兼容浏览器名单进行匹配,得到匹配结果,根据所述匹配结果确定当前浏览器是否为不兼容浏览器。
进一步地,所述第一解析模块20包括:
第一匹配单元,用于将预设关键字与所述第一目标信息进行匹配,得到当前浏览器对应的***类型和浏览器名称;
确定单元,用于根据所述***类型和所述浏览器名称确定待匹配参数,并根据所述浏览器名称、所述待匹配参数和预设映射关系确定待匹配关键字;
第二匹配单元,用于将所述待匹配关键字与所述第一目标信息进行匹配,得到所述待匹配参数对应的待匹配参数信息,其中,所述第一参数信息包括***类型、浏览器名称和待匹配参数信息。
进一步地,所述确定单元具体用于:
根据浏览器名称判断当前浏览器属于***浏览器还是第三方浏览器;
若当前浏览器属于第三方浏览器,则确定待匹配参数为浏览器版本号;
若当前浏览器属于***浏览器,则检测所述***类型为iOS***还是为Android***;
若所述***类型为iOS***,则确定待匹配参数为浏览器版本号;
若所述***类型为Android***,则确定待匹配参数为浏览器内核及版本号、浏览器版本号、***版本号和机型品牌。
进一步地,所述浏览器兼容性的检测装置还包括:
接收模块,用于接收测试端发送的基于不兼容浏览器测试获得的第二目标信息;
第二解析模块,用于对所述第二目标信息进行解析,得到第二参数信息;
名单生成模块,用于根据所述第二参数信息生成所述预设不兼容浏览器名单。
进一步地,所述浏览器兼容性的检测装置还包括:
监测模块,用于在接收到用户端浏览器的初次上报信息后,监测第一预设时间内是否接收到用户端浏览器的二次上报信息;
第二获取模块,用于若第一预设时间内未接收到用户端浏览器的二次上报信息,则获取所述用户端浏览器对应的第三参数信息,并将所述第三参数信息存储至预设数据库中;
统计模块,用于定期从所述预设数据库中获取第二预设时间内的第三参数信息,并进行统计,根据统计结果确定疑似不兼容浏览器名单;
发送模块,用于将所述疑似不兼容浏览器名单发送至预设测试端,以使得所述预设测试端检测所述疑似不兼容浏览器名单中是否存在不兼容浏览器;
更新模块,用于接收所述预设测试端返回的检测结果,并根据所述检测结果更新所述预设不兼容浏览器名单。
进一步地,所述浏览器兼容性的检测装置还包括:
第一提示模块,用于若确定当前浏览器为不兼容浏览器,则生成更换浏览器的提示信息,并在当前浏览器中进行显示提示。
进一步地,所述浏览器兼容性的检测装置还包括:
判断模块,用于根据所述浏览器名称判断当前浏览器是否属于自主开发浏览器;
所述第一提示模块,具体用于若当前浏览器不属于自主开发浏览器,则生成更换浏览器的提示信息,并在当前浏览器中进行显示提示;
第三获取模块,用于若当前浏览器属于自主开发浏览器,则根据所述***类型获取对应的兼容性解决方法;
第二提示模块,用于根据所述兼容性解决方法生成对应的解决方法提示信息,并在当前浏览器中进行显示提示。
其中,上述浏览器兼容性的检测装置中各个模块的功能实现与上述浏览器兼容性的检测方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。
本发明还提供一种可读存储介质,该可读存储介质上存储有浏览器兼容性的检测程序,所述浏览器兼容性的检测程序被处理器执行时实现如以上任一项实施例所述的浏览器兼容性的检测方法的步骤。
本发明可读存储介质的具体实施例与上述浏览器兼容性的检测方法各实施例基本相同,在此不作赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者***不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者***所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者***中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种浏览器兼容性的检测方法,其特征在于,所述浏览器兼容性的检测方法包括:
在侦测到当前浏览器启动视频录制功能时,通过所述当前浏览器的预设接口获取第一目标信息;
对所述第一目标信息进行解析,得到第一参数信息;
将所述第一参数信息与预设不兼容浏览器名单进行匹配,得到匹配结果,根据所述匹配结果确定当前浏览器是否为不兼容浏览器。
2.如权利要求1所述的浏览器兼容性的检测方法,其特征在于,所述对所述第一目标信息进行解析,得到第一参数信息的步骤包括:
将预设关键字与所述第一目标信息进行匹配,得到当前浏览器对应的***类型和浏览器名称;
根据所述***类型和所述浏览器名称确定待匹配参数,并根据所述浏览器名称、所述待匹配参数和预设映射关系确定待匹配关键字;
将所述待匹配关键字与所述第一目标信息进行匹配,得到所述待匹配参数对应的待匹配参数信息,其中,所述第一参数信息包括***类型、浏览器名称和待匹配参数信息。
3.如权利要求2所述的浏览器兼容性的检测方法,其特征在于,所述根据所述***类型和所述浏览器名称确定待匹配参数的步骤包括:
根据浏览器名称判断当前浏览器属于***浏览器还是第三方浏览器;
若当前浏览器属于第三方浏览器,则确定待匹配参数为浏览器版本号;
若当前浏览器属于***浏览器,则检测所述***类型为iOS***还是为Android***;
若所述***类型为iOS***,则确定待匹配参数为浏览器版本号;
若所述***类型为Android***,则确定待匹配参数为浏览器内核及版本号、浏览器版本号、***版本号和机型品牌。
4.如权利要求1所述的浏览器兼容性的检测方法,其特征在于,所述浏览器兼容性的检测方法还包括:
接收测试端发送的基于不兼容浏览器测试获得的第二目标信息;
对所述第二目标信息进行解析,得到第二参数信息;
根据所述第二参数信息生成所述预设不兼容浏览器名单。
5.如权利要求1至4中任一项所述的浏览器兼容性的检测方法,其特征在于,所述浏览器兼容性的检测方法还包括:
在接收到用户端浏览器的初次上报信息后,监测第一预设时间内是否接收到用户端浏览器的二次上报信息;
若第一预设时间内未接收到用户端浏览器的二次上报信息,则获取所述用户端浏览器对应的第三参数信息,并将所述第三参数信息存储至预设数据库中;
定期从所述预设数据库中获取第二预设时间内的第三参数信息,并进行统计,根据统计结果确定疑似不兼容浏览器名单;
将所述疑似不兼容浏览器名单发送至预设测试端,以使得所述预设测试端检测所述疑似不兼容浏览器名单中是否存在不兼容浏览器;
接收所述预设测试端返回的检测结果,并根据所述检测结果更新所述预设不兼容浏览器名单。
6.如权利要求2至4中任一项所述的浏览器兼容性的检测方法,其特征在于,所述根据所述匹配结果确定当前浏览器是否为不兼容浏览器的步骤之后,还包括:
若确定当前浏览器为不兼容浏览器,则生成更换浏览器的提示信息,并在当前浏览器中进行显示提示。
7.如权利要求6所述的浏览器兼容性的检测方法,其特征在于,所述生成更换浏览器的提示信息,并在当前浏览器中进行显示提示的步骤之前,还包括:
根据所述浏览器名称判断当前浏览器是否属于自主开发浏览器;
若当前浏览器不属于自主开发浏览器,则执行步骤:生成更换浏览器的提示信息,并在当前浏览器中进行显示提示;
若当前浏览器属于自主开发浏览器,则根据所述***类型获取对应的兼容性解决方法;
根据所述兼容性解决方法生成对应的解决方法提示信息,并在当前浏览器中进行显示提示。
8.一种浏览器兼容性的检测装置,其特征在于,所述浏览器兼容性的检测装置包括:
第一获取模块,用于在侦测到当前浏览器启动视频录制功能时,通过所述当前浏览器的预设接口获取第一目标信息;
第一解析模块,用于对所述第一目标信息进行解析,得到第一参数信息;
名单匹配模块,用于将所述第一参数信息与预设不兼容浏览器名单进行匹配,得到匹配结果,根据所述匹配结果确定当前浏览器是否为不兼容浏览器。
9.一种浏览器兼容性的检测设备,其特征在于,所述浏览器兼容性的检测设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的浏览器兼容性的检测程序,所述浏览器兼容性的检测程序被所述处理器执行时实现如权利要求1至7中任一项所述的浏览器兼容性的检测方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有浏览器兼容性的检测程序,所述浏览器兼容性的检测程序被处理器执行时实现如权利要求1至7中任一项所述的浏览器兼容性的检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911020265.7A CN110750460A (zh) | 2019-10-24 | 2019-10-24 | 浏览器兼容性的检测方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911020265.7A CN110750460A (zh) | 2019-10-24 | 2019-10-24 | 浏览器兼容性的检测方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110750460A true CN110750460A (zh) | 2020-02-04 |
Family
ID=69279855
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911020265.7A Pending CN110750460A (zh) | 2019-10-24 | 2019-10-24 | 浏览器兼容性的检测方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110750460A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112540925A (zh) * | 2020-12-16 | 2021-03-23 | 贝壳技术有限公司 | 新特性兼容性检测***及方法、电子设备及可读存储介质 |
CN113691752A (zh) * | 2021-09-01 | 2021-11-23 | 上海云从企业发展有限公司 | 基于终端设备的视频采集方法 |
CN113688045A (zh) * | 2021-08-26 | 2021-11-23 | 烽火通信科技股份有限公司 | 一种二进制接口兼容性自动检查方法及装置 |
CN115150375A (zh) * | 2022-06-23 | 2022-10-04 | 浙江惠瀜网络科技有限公司 | 视频流数据采集方法以及装置、电子设备、存储介质 |
-
2019
- 2019-10-24 CN CN201911020265.7A patent/CN110750460A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112540925A (zh) * | 2020-12-16 | 2021-03-23 | 贝壳技术有限公司 | 新特性兼容性检测***及方法、电子设备及可读存储介质 |
CN113688045A (zh) * | 2021-08-26 | 2021-11-23 | 烽火通信科技股份有限公司 | 一种二进制接口兼容性自动检查方法及装置 |
CN113688045B (zh) * | 2021-08-26 | 2024-03-22 | 烽火通信科技股份有限公司 | 一种二进制接口兼容性自动检查方法及装置 |
CN113691752A (zh) * | 2021-09-01 | 2021-11-23 | 上海云从企业发展有限公司 | 基于终端设备的视频采集方法 |
CN115150375A (zh) * | 2022-06-23 | 2022-10-04 | 浙江惠瀜网络科技有限公司 | 视频流数据采集方法以及装置、电子设备、存储介质 |
CN115150375B (zh) * | 2022-06-23 | 2024-05-31 | 浙江惠瀜网络科技有限公司 | 视频流数据采集方法以及装置、电子设备、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110750460A (zh) | 浏览器兼容性的检测方法、装置、设备及可读存储介质 | |
CN108595329B (zh) | 一种应用测试方法、装置及计算机存储介质 | |
CN111026645B (zh) | 用户界面自动化测试方法、装置、存储介质及电子设备 | |
US8589876B1 (en) | Detection of central-registry events influencing dynamic pointers and app feature dependencies | |
US9836346B2 (en) | Error troubleshooting using a correlated knowledge base | |
US8745590B2 (en) | Testing an application | |
US20170371937A1 (en) | Automated api publication for internet of things platform | |
CN111459794A (zh) | 通信网络测试方法、装置、计算机设备和存储介质 | |
US20130276000A1 (en) | Central registry for binding features using dynamic pointers | |
RU2767143C2 (ru) | Управление принятием решений с использованием машинного обучения в случае оповещений, исходящих от систем текущего контроля | |
CN109726100A (zh) | 应用性能测试方法、装置、设备及计算机可读存储介质 | |
CN109633351B (zh) | 智能it运维故障定位方法、装置、设备及可读存储介质 | |
CN108319662A (zh) | 页面处理方法、装置、电子设备及可读存储介质 | |
WO2005096153A2 (en) | Automated test system for testing an application running in a windows-based environment and related methods | |
CN111090592A (zh) | 埋点的自动化测试方法、终端及可读存储介质 | |
CN107678948B (zh) | 测试用例生成方法、终端及存储介质 | |
US20160283356A1 (en) | Event-driven automation testing for mobile devices | |
CN106445806B (zh) | 软件测试方法及装置 | |
CN110134574A (zh) | 一种软件性能测试方法、***、介质及电子设备 | |
CN107391362A (zh) | 应用测试方法、移动终端及存储介质 | |
CN111158741A (zh) | 监控业务模块对第三方类库依赖关系变化的方法及装置 | |
CN114356631A (zh) | 故障定位方法、装置、计算机设备和存储介质 | |
CN112000582A (zh) | 服务端自动化测试预警方法、装置、设备及存储介质 | |
CN109271316A (zh) | 安卓设备及其自动化测试方法、存储器 | |
CN112241362A (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 |