[发明专利]一种浏览器及其结束标签页的方法有效

专利信息
申请号: 201210432364.8 申请日: 2012-11-02
公开(公告)号: CN103793282B 公开(公告)日: 2017-08-18
发明(设计)人: 唐红兵 申请(专利权)人: 阿里巴巴集团控股有限公司
主分类号: G06F9/54 分类号: G06F9/54;G06F11/00
代理公司: 北京安信方达知识产权代理有限公司11262 代理人: 栗若木
地址: 英属开曼群岛大开*** 国省代码: 暂无信息
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 浏览器 及其 结束 标签 方法
【说明书】:

技术领域

发明涉及网络领域,具体涉及一种浏览器及其结束标签页的方法。

背景技术

目前许多网页浏览器均采用多进程的双内核架构,比如基于Webkit内核和Trident内核的多进程双核浏览器。

双核浏览器,即有两个内核的浏览器。由于IE浏览器在国内的普及率非常高,所以造成了很多网上银行和支付系统只支持IE的Trident内核,其他浏览器访问根本无法进行正常支付和转账等业务。而WebKit内核的非IE浏览器以更高的性能和更好的用户体验拥有了越来越多的用户。于是双核浏览器应运而生,在不用网上交易的一般网站,使用速度快的WebKit内核访问,这就是所谓的“高速模式”;在访问支付宝或者网上银行的时候,使用Trident内核的“兼容模式”来进行业务。这样一个浏览器多个内核,满足同一用户的不同需求。

Trident一又称为MSHTML,是微软的窗口操作系统(Windows)搭载的网页浏览器一Internet Explorer的排版引擎的名称。

Webkit,是一个开源的浏览器引擎。WebKit的优势在于高效稳定,兼容性好,且源码结构清晰,易于维护。尽管Webkit内核是个非常好的网页解释机制,但是由于微软把IE捆绑在Windows里,导致许多网站都是按照IE来架设的,很多网站不兼容Webkit内核,比如登录界面、网银等网页均不可使用Webkit内核。

多进程双核浏览器的主进程负责主界面及其逻辑,以及对子进程进行管理和通信。每个标签页的网页解析、渲染则由子进程负责。有两种子进程类型:Webkit内核子进程和Trident内核子进程。由于Trident内核的特殊性,Trident内核创建了一个用于呈现网页的WebBrowser(网页浏览器)窗口嵌于主进程的标签页容器窗口内,这种架构导致在关闭标签页时可能引发严重的问题。

当主进程关闭一个标签页(Tab)时,它将调用Windows API(ApplicationProgramming Interface,应用程序编程接口)DestroyWindow(销毁指定窗口的函数)来销毁该标签页的容器窗口及其子窗口。由于Trident内核子进程创建的WebBrowser窗口是该标签页的容器窗口的子窗口,因此,它也将在此过程中被销毁。主进程尝试销毁子进程的子窗口时,需要与子进程通信,DestroyWindow发送WM_DESTROY和WM_NCDESTROY消息给子窗口,并使它变成非激活状态,移除键盘焦点。不幸的是,一些网页在卸载时需要弹出模态对话框来提示用户,比如,弹出“感谢您的访问!”、“确定要离开当前页面吗?”、“请拔掉网银U盾”等等,子进程在标签页关闭时卸载网页并产生了模态对话框,这意谓着UI(User Interface,用户界面)线程被模态对话框阻塞,它无法处理主进程DestroyWindow发送的WM_DESTROY、WM_NCDESTROY消息,主进程的UI线程便一直阻塞、等待这两个消息被处理。同时,子进程弹出模态对话框时也需要与主进程的主窗口进行某些UI上的同步,比如使主窗口变为非激活状态、使主窗口不可用等等,这也意谓着子进程将引发一些消息让主进程处理,但同样不幸的是,主进程的UI线程因为DestroyWindow进程未完成而阻塞。这样,主进程和子进程双方都无法继续,其UI线程均处于阻塞状态,无法响应用户的任何操作,这样就会产生一个界面死锁的严重问题,并最终导致进程崩溃。

使用Trident内核的多进程浏览器理论上都存在这个问题,为了避免这个问题,现有的一种解决方案是可以实现IDocHostShowUI接口,接管ShowMessage(显示信息)方法,在标签页关闭时给子进程作个标记,让它知道在这种情况下不要弹出对话框。通过在ShowMessage中判断标记,并返回信息欺骗Trident内核已经弹出了对话框而达到目的。这样,浏览器在关闭标签页时,应该弹出的提示框被忽略了。

另外,还有一种现有的解决方案是标签页关闭时直接结束标签页的子进程,不给Trident内核正常卸载的机会。这样Trident内核就不可能在网页关闭时弹出模态对话框。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201210432364.8/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top