[发明专利]一种利用网页生命周期优化应用的方法和装置有效
申请号: | 201210093711.9 | 申请日: | 2012-03-31 |
公开(公告)号: | CN102662668A | 公开(公告)日: | 2012-09-12 |
发明(设计)人: | 李超;杭程;万勇;任寰 | 申请(专利权)人: | 奇智软件(北京)有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 苏培华 |
地址: | 100016 北京市朝阳*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 利用 网页 生命周期 优化 应用 方法 装置 | ||
技术领域
本申请涉及网页数据处理技术领域,特别是涉及一种利用网页生命周期优化应用的方法和装置。
背景技术
组件技术是当前计算机工业最重要的软件开发技术之一。传统上,一个应用程序是由单个的二进制文件组成,但是这样的应用程序非常不便于使用,因为如果要改变应用程序的某部分功能就需要对整个应用程序重新编译生成新的版本才能使用。随后,开发人员开始将单个应用程序分隔成单独多个独立部分,每个独立部分都是相对小的可执行程序,也即是组件。组件除了自身可执行外,还可以为应用程序、操作系统或其他程序提供服务。
组件对象模型(Component Oject Model,COM)是微软公司提出的一种开发组件的方法。在COM组件架构下,COM组件通常以动态链接库(DLL)或可执行文件(EXE)的方式发布为可执行代码,人们可以开发出各种各样的功能专一的组件,然后将它们按照需要组合起来,构成复杂的应用系统。
浏览器控件(WebBrowser)是一种基于COM的控件。使用WebBrowser控件可以在Windows窗体应用程序中承载网页以及支持浏览器的其他文档,并为应用程序提供Web浏览功能。
WebBrowser控件包含多种可以用来实现浏览器(Internet Explorer)中的控件的属性、方法和事件。WebBrowser通过事件与外部应用程序进行交互。事件由WebBrowser触发,外部应用程序根据不同的事件执行不同的逻辑处理。
WebBrowser常用事件有以下几个:
BeforeNavigate2:导航前事件,该事件在导航之前发生,该事件并不在刷新页面时发生。
NavigateComplete2:导航完成事件,当整个导航完成时发生。
DownloadBegin:下载开始事件,当一个下载项目开始时发生,此事件也在刷新时发生。
DownloadComplete:下载完成事件,当整个下载项目完成时发生,该事件也发生在完成刷新页面时。
WebBrowser虽然提供了丰富的事件,但这些事件的封装仍存在缺陷。例如,当用户在浏览器地址栏输入URL进入网站浏览网页时会触发BeforeNavigate事件,当离开当前网页时(此时用户输入了新的URL)也会触发BeforeNavigate事件,用户输入新的URL同时也意味着之前网页生命周期结束。由于网页表现形式的多样性,在一个主网页(主帧)中可能包含多个子网页(子帧),其中每个帧的网页对应不同的url。如图1所示,图1示出了一个主帧包含子帧1、子帧2两个子帧的网页形式。对于这种情况,主帧和子帧都会触发当前WebBrowser控件的同一事件,例如当主帧和子帧进入或离开各自对应的URL时会触发多次BeforeNavigate事件。
对于主帧或子帧各自网页的生命周期而言,由于主帧和子帧在导航至新的URL时都将触发BeforeNavigate事件,而开发人员为了识别当前帧对象中网页的生命周期是否结束,就需要在应用程序中使用大量的编码方式逐一比较和记录各个帧中网页的前后变化,这种采用硬编码的方式灵活性很差,造成资源和成本难以降低。同样的问题在网页生命周期中的其他类似事件触发时同样无法避免,如DocumentComplete事件等。因此,不但所有事件都需要大量编码处理,对代码的任何修改都必须覆盖到对所有事件的处理,而且应用程序也必须做出相应修改。特别是,随着主帧中子帧数量的增加,随之带来的复杂度和工作量也急剧增加,无法有效降低开发成本。
总之,需要本领域技术人员迫切解决的一个技术问题就是:如何能够降低上述情形下的工作成本,减少资源消耗。
发明内容
本申请所要解决的技术问题是提供一种利用网页生命周期优化应用的方法和装置,以便能够降低因为识别控制网页生命周期时需要针对众多事件编码处理导致的开发成本高、资源消耗大的问题。
为了解决上述问题,本申请公开了一种利用网页生命周期优化应用的方法,包括:
依据浏览器控件对象的当前事件获取当前网页的帧对象;
获取所述帧对象的状态机对象;
基于所述状态机对象,记录当前网页的生命周期信息;
各应用依据自身需求,获取相应网页的生命周期信息;并基于所获取的生命周期信息,执行相应优化操作。
优选的,所述基于所获取的生命周期信息,执行相应优化操作包括:
基于所获取网页的生命周期信息判断当前网页的生命周期是否结束,若结束,释放与所述网页对应的系统资源。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于奇智软件(北京)有限公司,未经奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210093711.9/2.html,转载请声明来源钻瓜专利网。