[发明专利]网络应用的框架装置及运行方法有效
申请号: | 201110169313.6 | 申请日: | 2011-06-22 |
公开(公告)号: | CN102843394A | 公开(公告)日: | 2012-12-26 |
发明(设计)人: | 黄奎;魏亚民;谢昕虬;刘红杰 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 谢安昆;宋志强 |
地址: | 518044 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 网络 应用 框架 装置 运行 方法 | ||
技术领域
本发明涉及互联网应用技术领域,尤其涉及一种网络应用(WebApp)的框架装置以及WebApp的运行方法。
背景技术
WebApp是使用网络(Web)页面作为基础,完成某种功能的应用。相对于普通的Web页面,WebApp更强调功能性,比如邮箱,小游戏,日程表等。WebApp框架是指WebApp的运行环境,比如采用何种浏览器内核,何种编程接口,有哪些接口可以由WebApp调用等。
目前已经有很多的WebApp框架,包括谷歌(Google)公司现在有Chrome的WebApp框架,苹果(Apple)公司的WebApp框架,以及微软(Microsoft)公司的WebApp框架。但这些WebApp框架需要运行在浏览器上,其能力仅限于浏览器内部,从行为上看,仍然属于一个网页。Chrome虽然进行了扩展,但也仅限于访问收藏夹,历史纪录等浏览器相关的数据,本质上仍然属于Web的应用。
正因为目前WebApp框架运行在浏览器上,因此其稳定性、整体性能、安全性都存在着一定的缺陷。具体如下:
在目前的WebApp框架技术方案中,所有的WebApp容器窗口实质上是一个浏览器窗口,窗口内的界面直接使用浏览器内核控件窗口,由浏览器内核直接渲染WebApp的界面。这种处理方式的缺点是:在浏览器内核发生崩溃或者卡住的时候,对应的WebApp容器窗口的子窗口也会崩溃或卡住,导致WebApp的稳定性较差。
除了稳定性以外,WebApp页面还会受到浏览器内核性能的影响,以及浏览器自身的进程和线程模型的限制。如果所有的浏览器页面都在一个进程的一个线程打开,那么随着WebApp的打开和关闭,内存的释放会有问题;而如果WebApp打开比较多的话,WebApp的整体性能也会存在很大问题。因此目前WebApp框架的整体性能不高。
另外,浏览器自身非常容易受到恶意攻击,因而目前WebApp需要运行在浏览器上,而此WebApp的安全性也存在很大问题。
发明内容
有鉴于此,本发明的主要目的是提供一种WebApp的框架装置及运行方法,以提高WebApp的稳定性、整体性能和安全性。
本发明的技术方案是这样实现的:
一种网络应用的框架装置,该框架装置为一客户端装置,包括相互独立的框架进程和浏览器进程;所述框架进程中包括容器窗口和浏览器代理对象,所述浏览器进程中包括网络应用对应的浏览器内核和存根对象;所述框架进程的浏览器代理对象用于将所述容器窗口内指定区域的相关信息发送给浏览器进程的存根对象,并由该存根对象转发给对应的浏览器内核,所述浏览器内核根据收到的信息渲染网络应用的界面信息,并通过本浏览器进程的存根对象将该界面信息跨进程发送给所述框架进程的浏览器代理对象;该浏览器代理对象将收到的界面信息展示在所述容器窗口的指定区域。
优选的,在同时运行一个以上网络应用时,所有网络应用对应的浏览器内核分别运行在不同的浏览器进程中,或者其中至少两个网络应用对应的浏览器内核共享一个浏览器进程。
优选的,该装置包括本地组件、自定义对象和脚本引擎,其中:
所述本地组件用于提供基础的客户端功能;
所述自定义对象用于封装本地组件,形成特定的客户端功能;
所述脚本引擎中设置有所述自定义对象对应的脚本对象;
所述浏览器内核嵌入了所述脚本对象,并通过运行脚本调用所嵌入的脚本对象,运行所述自定义对象的特定的客户端功能。
优选的,所述自定义对象、脚本引擎、以及浏览器内核运行在同一浏览器进程中,所述本地组件也运行在该浏览器进程中,或者所述本地组件运行在与该浏览器进程相独立的进程中。
优选的,所述本地组件为本地服务组件,所述自定义对象为服务代理对象。
优选的,所述浏览器进程中进一步包括沙箱保护单元,用于对浏览器进程进行防护。
一种网络应用的运行方法,设置网络应用客户端,并包括:
在网络应用客户端中启动相互独立的框架进程和浏览器进程,所述框架进程中运行容器窗口和浏览器代理对象,所述浏览器进程中运行浏览器内核和存根对象;
所述框架进程的浏览器代理对象将所述容器窗口内指定区域的相关信息发送给浏览器进程的存根对象,并由该存根对象转发给对应的浏览器内核;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110169313.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于雕刻或模仿物体的触觉设备
- 下一篇:一种遮阳窗框