[发明专利]基于银河锐华操作系统的C++适配层的装置有效
申请号: | 202010866101.2 | 申请日: | 2020-08-25 |
公开(公告)号: | CN112035097B | 公开(公告)日: | 2023-10-13 |
发明(设计)人: | 王千;陆平;高元钧;徐冬晨 | 申请(专利权)人: | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F9/445 |
代理公司: | 上海段和段律师事务所 31334 | 代理人: | 李佳俊;郭国中 |
地址: | 201800 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 银河 操作系统 c++ 适配层 装置 | ||
本发明提供了一种基于银河锐华操作系统的C++适配层,包括:C++插件库:根据预设的插件库的基类,C++插件库继承该插件库的基类并根据具体功能需求实现桥接类,桥接类作为C++插件库接受JS的调用指令的入口;插件库模块管理器:将每个C++插件库作为一个模块进行动态管理,保存有系统对C++插件库调用所需的信息;插件对象管理器:每个应用将独立拥有一个专属于该应用进程的插件对象管理器,插件对象管理器向应用封装接口,应用通过所述接口与C++插件库进行交互。本发明在JS端能够通过简单的系统接口调用便能够实现与C++代码的交互,不需要引入额外的第三方框架,从而使得应用对C++代码的调用变得更加简单与安全。
技术领域
本发明涉及,具体地,涉及基于银河锐华操作系统的C++适配层。
背景技术
目前存在的JS/C++混合开发技术使用较多的为nodejs框架以及QWebKit。
对于nodejs框架来说,若要进行JS与C++进行混合编译,需要nodejs扩展模块开发支持包以及node-gyp构建自动化工具支持编译,而这些模块均需要根据不用移动设备进行移植,从而带来较大的工作量以及不可控性,可移植性差。此外,在使用nodejs框架构建工程时,需要编写node包管理文件以及模块描述文件进行大量编译配置工作,使得代码的开发难度,工作量增加。
而QWebKit则是用于在基于QT框架开发的应用中嵌入Web控件并与之进行交互,并不能满足在基于Html5/CSS/JS框架开发的应用中进行JS/C++混合开发的需求。
C++适配层通过扩展系统接口的方式实现JS与C++的交互调用,C++代码的编译完全使用系统的编译器进行,使得C++的开发与编译简单易行,不需要由于C++适配层需要运行不同的移动设备上而产生额外的移植工作;此外系统接口的方式也使得在JS端与C++代码的交互变得简单,开发难度大大降低。
由于Html5/CSS/JS框架的使用使得前段开发变得更加简单、高效,对前端的布局、字体、颜色、背景等效果实现了更加精确的控制,且维护成本更低,这些优势使得Html5/CSS/JS成为前端开发的趋势。但是对于运行在移动操作系统中的应用尤其是系统应用来说,在很多时候需要针对某些特色硬件设备进行操控与访问,而Html5/CSS/JS框架很难直接与硬件驱动进行对接;此外,对于一些算法或功能,在很多情况下存在即有的C/C++实现,而对其进行JS移植则存在很大的工作量。这些问题都使得在移动操作系统上实现JS/C++的混合应用开发变得非常必要。而C++适配层的实现能够在对现有的C++代码进行简单封装后实现与JS的交互调用,从而最大限度的实现代码的复用,减少开发成本。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种基于银河锐华操作系统的C++适配层。
根据本发明提供的一种基于银河锐华操作系统的C++适配层,包括:
C++插件库:根据预设的插件库的基类,C++插件库继承该插件库的基类并根据具体功能需求实现桥接类,桥接类作为C++插件库接受JS的调用指令的入口;
插件库模块管理器:将每个C++插件库作为一个模块进行动态管理,保存有系统对C++插件库调用所需的信息;
插件对象管理器:每个应用将独立拥有一个专属于该应用进程的插件对象管理器,插件对象管理器向应用封装接口,应用通过所述接口与C++插件库进行交互。
优选地,所述桥接类的主要功能包括:
插件的初始化、插件方法调用;
所述实现桥接类的方法包括:
调用方法的重载实现,调用方法接受JS传递的操作指令,以及指令参数,根据指令插件库进行相应操作决策,并将执行最终结果返回到JS。
优选地,还包括插件回调方法:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华东计算技术研究所(中国电子科技集团公司第三十二研究所),未经华东计算技术研究所(中国电子科技集团公司第三十二研究所)许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010866101.2/2.html,转载请声明来源钻瓜专利网。