[发明专利]一种跨平台的浏览器外设调用方法在审
申请号: | 201910764875.1 | 申请日: | 2019-08-19 |
公开(公告)号: | CN110457145A | 公开(公告)日: | 2019-11-15 |
发明(设计)人: | 连春华;詹开明;林隆永;林森;秦伟;蒋黎维;周永华 | 申请(专利权)人: | 四川久远银海软件股份有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/445 |
代理公司: | 51213 四川省成都市天策商标专利事务所 | 代理人: | 张秀敏<国际申请>=<国际公布>=<进入 |
地址: | 610000四川*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 浏览器页面 调用 厂商 外部设备 浏览器进程 外设 封装 引擎 解释执行 映射关系 用户操作 跨平台 浏览器 返回 屏蔽 反射 检测 创建 | ||
本发明公开了一种跨平台的浏览器外设调用方法,包括:创建浏览器页面时,建立浏览器页面JS对象与浏览器进程内部的对象的映射关系;浏览器页面检测到用户操作时,由JS引擎自动解释执行JavaScript代码,浏览器页面运行调用外设的JavaScript代码时,浏览器进程内部的对象通过JS桥对外部设备的API进行调用,外部设备的API返回的数据依次通过JS桥、JS引擎返回浏览器页面。本发明通过对厂商API的描述/封装,通过代码反射实现对厂商API的调用,屏蔽不同厂商的API名称不同的情况。由于只需要对厂商的API进行描述,减少大量的针对各个不同厂商的API专门封装操作。
技术领域
本发明涉及计算机软件技术领域,具体的说,是一种跨平台的浏览器外设调用方法。
背景技术
ActiveX插件是用于互联网的很小的程序,有时称为插件程序。它们会允许播放动画,或帮助执行任务,如在Microsoft Update安装安全更新。如图1为ActiveX插件在浏览器中的实现:当浏览器需要加载一个ActiveX插件时,会自动检查其是否存在,然后在页面上的相应位置插入ActiveX插件的web UI。用户在使用web UI或其他方式与插件进行交互是通过COM接口来进行通信。厂商一般仅能提供用于IE浏览器的ActiveX插件,不能实现跨平台调用。厂商提供的ActiveX插件仅用于与各自的外设进行数据交换及设备控制。以下,为了方便称为厂商外设工具包。目前的ActiveX插件,仅能运行于IE浏览器及Windows环境下,无法满足跨平台的需求。ActiveX插件厂商选择不一致,导致其调用方式也不完全一致,会严重增加开发者的开发及调试工作量。
发明内容
本发明的目的在于提供一种跨平台的浏览器外设调用方法,用于解决现有技术中目前的ActiveX插件,仅能运行于IE浏览器及Windows环境下,无法满足跨平台的需求的问题。
本发明通过下述技术方案解决上述问题:
一种跨平台的浏览器外设调用方法,包括:
步骤S100:创建浏览器页面时,建立浏览器页面JS对象与浏览器进程内部的对象的映射关系;
步骤S200:浏览器页面检测到用户操作时,由JS引擎自动解释执行JavaScript代码,浏览器页面运行调用外设的JavaScript代码时,浏览器进程内部的对象通过JS桥对外部设备的API进行调用,外部设备的API返回的数据依次通过JS桥、JS引擎返回浏览器页面。
用户在浏览器网页上进行相应操作时,JS引擎会自动解释执行JS代码,并且调用JS对象映射的其他语言的对象,如A对象,然后A对象会通过JS桥对外部设备的API进行调用,此时,数据从用户浏览器网页通过JS引擎流向JS桥,然后通过发射机制流向外部设备,数据返回到浏览器页面遵从这一过程的逆过程。
JS桥作为前端浏览器页面JavaScript和浏览器扩展、外部设备API之间的桥梁,用来扩展浏览器功能的接口,浏览器扩展用来解析调用外设API,这个浏览器扩展被实现为与外设无关、可以调用任何外设的任何API。通过对厂商外部设备的API的描述/封装,通过代码反射实现对厂商API的调用,可以屏蔽不同厂商之间的API名称不同的情况。在JS代码中仅需要传入厂商信息、需要调用的API(描述文件)名称以及传入的必要参数等,即可简单的实现对外设的信息获取等操作。由于只需要对厂商的API进行描述,降低了开发者的入门门槛,同时也可以减少大量的针对各个不同厂商的API专门封装操作。
进一步地,所述步骤S200中浏览器进程内部的对象通过JS桥对外部设备的API进行调用具体包括:
A:浏览器进程内部的对象自动调用预先注册在JS桥中的对象,JS桥中的对象加载并调用浏览器扩展,所述浏览器扩展为通过浏览器扩展API实现的自动装载的插入式功能;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川久远银海软件股份有限公司,未经四川久远银海软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910764875.1/2.html,转载请声明来源钻瓜专利网。