[发明专利]网络应用的运行装置及方法有效
申请号: | 201110169232.6 | 申请日: | 2011-06-22 |
公开(公告)号: | CN102843393A | 公开(公告)日: | 2012-12-26 |
发明(设计)人: | 黄奎;魏亚民;谢昕虬;刘红杰 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;G06F17/30 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 谢安昆;宋志强 |
地址: | 518044 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 网络 应用 运行 装置 方法 | ||
技术领域
本发明涉及互联网应用技术领域,尤其涉及一种网络应用(WebApp)的运行装置以及运行方法。
背景技术
WebApp是使用网络(Web)页面作为基础,完成某种功能的应用。相对于普通的Web页面,WebApp更强调功能性,比如邮箱,小游戏,日程表等。WebApp框架是指WebApp的运行环境,比如采用何种浏览器内核,何种编程接口,有哪些接口可以由WebApp调用等。
目前已经有很多的WebApp框架,包括谷歌(Google)公司现在有Chrome的WebApp框架,苹果(Apple)公司的WebApp框架,以及微软(Microsoft)公司的WebApp框架。但这些WebApp框架需要运行在浏览器上,其能力仅限于浏览器内部,从行为上看,仍然属于一个网页。Chrome虽然进行了扩展,但也仅限于访问收藏夹,历史纪录等浏览器相关的数据,本质上仍然属于Web的应用。
基于Web的WebApp本身有许多优点,比如部署更新都非常方便,但是能力却受到浏览器的限制。不能进行超越浏览器限制的操作,比如访问本地文件,直接使用TCP或者UDP进行通讯等。当然最近的HTML5已经开放了部分能力,但仍然是非常有限的。相对于客户端程序,Web的能力受到很大的限制。
在互联网的环境下,如果要搭建一个WebApp平台,在此平台上提供各种各样的能力,然后基于这种能力来开发各种各样的应用,面临一个开发环境选择的问题,如果是纯Web的环境,则某些能力很难提供,比如基于TCP或者UDP的数据服务、视频、传文件等客户端才能实现的能力。如果完全采用客户端程序,则有两个问题:其一是安全问题,因为客户端程序拥有非常大的权限,可以对系统进行任意操作,有安全风险;其二是开发门槛的问题,要开发一个好的客户端程序需要技术要求更高更严格的开发工程师。对于一个WebApp平台来说,对技术的高要求是不利于平台的推广的。
发明内容
有鉴于此,本发明的主要目的是提供一种WebApp的运行装置及方法,以扩展WebApp框架的能力,同时又降低WebApp的技术开发门槛。
本发明的技术方案是这样实现的:
一种网络应用的运行装置,包括网络应用对应的浏览器内核和脚本引擎,该装置还包括本地组件和自定义对象,其中:
所述本地组件用于提供基础的客户端功能;
所述自定义对象用于封装本地组件,形成特定的客户端功能;
所述脚本引擎中设置有所述自定义对象对应的脚本对象;
所述浏览器内核嵌入了所述脚本对象,并通过运行脚本调用所嵌入的脚本对象,运行所述自定义对象的特定的客户端功能。
优选的,该装置包括浏览器进程;所述自定义对象、脚本引擎、以及浏览器内核运行在同一浏览器进程中,所述本地组件也运行在该浏览器进程中,或者所述本地组件运行在与该浏览器进程相独立的进程中。
优选的,在同时运行一个以上网络应用时,所有网络应用对应的浏览器内核分别运行在不同的浏览器进程中,或者其中至少两个网络应用对应的浏览器内核共享一个浏览器进程。
优选的,所述浏览器进程中进一步包括沙箱保护单元,用于对浏览器进程进行防护。
优选的,该装置进一步包括框架进程,该框架进程中包括容器窗口和浏览器代理对象,所述浏览器进程中进一步包括存根对象;所述框架进程的浏览器代理对象用于将所述容器窗口内指定区域的相关信息发送给浏览器进程的存根对象,并由该存根对象转发给对应的浏览器内核,所述浏览器内核根据收到的信息渲染网络应用的界面信息,并通过本浏览器进程的存根对象将该界面信息跨进程发送给所述框架进程的浏览器代理对象;该浏览器代理对象将收到的界面信息展示在所述容器窗口的指定区域。
优选的,所述本地组件为本地服务组件,所述自定义对象为服务代理对象。
一种网络应用的运行方法,包括:
封装本地组件,形成具有特定客户端功能的自定义对象;
在脚本引擎中设置所述自定义对象的脚本对象;
在浏览器内核嵌入所述脚本对象;
当网络应用运行时,浏览器内核通过运行脚本调用所嵌入的脚本对象,运行所述自定义对象的特定的客户端功能。
优选的,在网络应用运行时,在同一浏览器进程中运行所述自定义对象、脚本引擎、浏览器内核,在与该浏览器进程相独立的进程中运行所述本地组件;或者在同一浏览器进程中运行所述本地组件、自定义对象、脚本引擎、以及浏览器内核。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110169232.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:四足动物的康复或运动帮助装置
- 下一篇:手甩式施肥器