[发明专利]一种扩展浏览器功能的方法及浏览器系统有效
申请号: | 201210237542.1 | 申请日: | 2012-07-09 |
公开(公告)号: | CN103543991B | 公开(公告)日: | 2018-06-08 |
发明(设计)人: | 唐虹刚;黎科峰 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/30 |
代理公司: | 北京鸿德海业知识产权代理事务所(普通合伙) 11412 | 代理人: | 袁媛 |
地址: | 100085 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 非原生 脚本 创建 解析 脚本引擎模块 扩展浏览器 浏览器系统 脚本代理 页面脚本 浏览器 插件描述文件 插件机制 模块调用 实例创建 映射关系 触发 插件 可用 预设 调用 | ||
1.一种扩展浏览器功能的方法,包括:
A.浏览器的脚本引擎模块解析页面脚本,在解析过程中确定所述页面脚本中待创建的非原生脚本实例,并将所述待创建的非原生脚本实例的标识发送给浏览器的脚本代理模块;
B.所述脚本代理模块根据预设的插件描述文件中的映射关系创建与所述标识对应的Java类实例,根据所述Java类实例的属性和方法确定所述待创建的非原生脚本实例的定义,并根据该定义创建所述待创建的非原生脚本实例;
C.当所述脚本引擎模块在解析过程中调用已创建的非原生脚本实例的方法时,触发所述脚本代理模块调用与所述已创建的非原生脚本实例对应的Java类实例的相应方法并将调用结果返回至所述脚本引擎模块。
2.根据权利要求1所述的方法,其特征在于,确定所述页面脚本中待创建的非原生脚本实例的步骤具体包括:
判断所述页面脚本中的引用所指对象在内存中是否存在,如果否,则确定该引用所指对象为待创建的非原生脚本实例;或者,
通过所述页面脚本中表征创建动作的关键字确定待创建的脚本实例,并判断所述待创建的脚本实例所属类是否在所述页面脚本中被定义,如果否,则确定所述待创建的脚本实例为待创建的非原生脚本实例。
3.根据权利要求1所述的方法,其特征在于,所述映射关系的属性包括:第一属性以及第二属性,其中所述第一属性用于描述非原生脚本实例的名称或非原生脚本实例所属类的名称,所述第二属性用于描述与所述第一属性对应的Java类的名称。
4.根据权利要求3所述的方法,其特征在于,所述映射关系的属性还包括:第三属性,其中所述第三属性用于描述依据该映射关系产生的对象的有效期间。
5.根据权利要求4所述的方法,其特征在于,所述第三属性的属性值包括:在一个页面加载至销毁期间有效的页面属性值、在一个浏览器加载至关闭期间有效的会话属性值、或与一个服务器交互期间有效的域属性值。
6.根据权利要求3所述的方法,其特征在于,所述脚本代理模块创建所述Java类实例的步骤具体包括:
所述脚本代理模块确定各映射关系中第一属性的属性值与所述标识相匹配的映射关系,并创建由该映射关系中第二属性的属性值指定的Java类的实例。
7.根据权利要求1或6所述的方法,所述标识包括所述待创建的非原生脚本实例的名称,或者,所述待创建的非原生脚本实例所属类的名称。
8.根据权利要求5所述的方法,其特征在于,所述方法在所述步骤A前进一步包括:
所述脚本代理模块确定所述插件描述文件中第三属性值为会话属性值的映射关系,并创建该映射关系指定的Java类实例及与该Java类实例对应的非原生脚本实例。
9.根据权利要求1所述的方法,其特征在于,所述相应方法为与调用的非原生脚本实例的方法具有相同名称的方法。
10.一种浏览器系统,包括脚本引擎模块和脚本代理模块,其特征在于,所述脚本引擎模块包括:
解析单元,用于解析页面脚本;
检测单元,用于在所述解析单元解析过程中确定所述页面脚本中待创建的非原生脚本实例,并将所述待创建的非原生脚本实例的标识发送给浏览器的脚本代理模块;
所述脚本代理模块包括:执行单元、第一创建单元和第二创建单元;
所述第一创建单元,用于根据预设的插件描述文件中的映射关系创建与所述标识对应的Java类实例;
所述第二创建单元,用于根据所述Java类实例的属性和方法确定所述待创建的非原生脚本实例的定义,并根据该定义创建所述待创建的非原生脚本实例;
所述解析单元还用于在解析过程中调用已创建的非原生脚本实例的方法时,触发所述执行单元运行,其中所述执行单元用于调用与所述已创建的非原生脚本实例对应的Java类实例的相应方法并将调用结果返回至所述解析单元。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司,未经百度在线网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210237542.1/1.html,转载请声明来源钻瓜专利网。