[发明专利]插件与宿主兼容性的检测方法及检测服务器有效
申请号: | 201410273180.0 | 申请日: | 2014-06-18 |
公开(公告)号: | CN104008060B | 公开(公告)日: | 2017-02-01 |
发明(设计)人: | 詹勋昌;罗锦坚 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京派特恩知识产权代理有限公司11270 | 代理人: | 任媛,张颖玲 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 插件 宿主 兼容性 检测 方法 服务器 | ||
技术领域
本发明涉及信息处理领域的兼容性技术,尤其涉及一种插件与宿主兼容性的检测方法及检测服务器。
背景技术
宿主:又可称为宿主环境或宿主代码,可调用插件来执行指定的功能。所述宿主可以系统或应用程序等计算机可执行代码。
插件:是一种遵循一定规范的调用接口编写出来的程序。通过插件技术可以在宿主发行之后,通过更新插件达到修改宿主的目的,而不需要发布整个应用程序的新版本。
插件能被宿主调用,则认为该插件与该宿主兼容,否则不兼容。由于插件和宿主均可以独立发布,当安装新版本的宿主程序时,旧版宿主上已经安装的插件有一些可以继续使用,一些无法继续使用,可以继续使用的就叫兼容的,反之是不兼容的。然而在现在技术中没有一种行之有效的方法能检测出插件与宿主的兼容性。
客户端应用了一段时间后,可能会出现代码程序越来越臃肿,且代码维护成本也越来越高的问题,尤其是进行了宿主程序的升级或版本更新后。造成这种显现的原因之一是宿主程序更新后,为了保持与旧版本宿主的插件的兼容性,通常不会对插件进行删减;然而实际应用过程中有一些旧版本宿主的插件与新版本的宿主是不兼容的,但是由于无法甄别出那些旧版本宿主的插件与新版本宿主是兼容的,哪些是不兼容的,从而也没有办法删除不兼容的插件。此外,若在宿主和插件加载的过程中,若加载了与宿主不兼容的插件将导致加载异常,如系统崩溃等。
因此,提出一种能检测出插件与宿主兼容性的方法是现有技术亟待解决的问题。
发明内容
有鉴于此,本发明实施例期望提供一种插件与宿主兼容性的检测方法及检测服务器,以检测插件与宿主的兼容性,以便根据兼容性的检测结果删除与宿主不兼容的插件,以实现客户端的插件的正常加载及精简客户端的程序代码及降低代码维护成本。
本发明实施例的技术方案是这样实现的:
本发明实施例第一方面提供一种插件与宿主兼容性的检测方法,所述方法包括:
获取所述插件的第一解析结果,依据所述第一解析结果获取所述插件被宿主调用时需要用到的至少一个第一调用接口;
获取所述宿主的第二解析结果,依据所述第二解析结果获取所述宿主用于调用插件的第二调用接口;
依据所述第一解析结果及所述第二解析结果判断每一个所述第一调用接口是否包括在所述第二调用接口中,形成判断结果;
依据所述判断结果确定所述插件是否与所述宿主兼容。
优选地,
所述获取所述插件的第一解析结果包括:
获取所述插件的编译信息;
解析所述插件的编译信息形成第一解析结果;
所述获取所述宿主的第二解析结果包括:
获取所述宿主的编译信息;
解析所述宿主的编译信息形成第二解析结果。
优选地,
所述依据所述第一解析结果及所述第二解析结果判断每一个所述第一调用接口是否包括在所述第二调用接口中包括:
将所述第一解析结果中,描述每一个所述第一调用接口的第一信息与所述第二解析结果中第二调用接口的第二信息进行比对,形成比对结果;
当所述比对结果表明一个所述第一调用接口的所述第一信息全包括在所述第二信息中时,确定该所述第一调用接口包括在所述第二调用接口中;
当所述比对结果表明一个所述第一调用接口的所述第一信息未全包括在所述第二信息中时,确定该所述第一调用接口不包括在所述第二调用接口中。
优选地,
所述依据所述判断结果确定所述插件是否与所述宿主兼容包括:
当依据所述第一解析结果及所述第二解析结果判断出至少有一个所述第一调用接口不包括在所述第二调用接口中时,确定所述插件与所述宿主不兼容;当依据所述第一解析结果及所述第二解析结果判断出每一个所述第一调用接口都包括在所述第二调用接口中时,
从所述第一解析结果中,获取所述第一调用接口的第一混淆表信息;
从所述第二解析结果中,获取所述第二调用接口的第二混淆表信息;
判断所述第一调用接口的所述第一混淆表信息与对应的第二调用接口的所述第二混淆表信息是否一致,
若一致时,则确定所述插件与所述宿主兼容。
优选地,所述方法还包括:
在所述依据判断结果确定所述插件是否与所述宿主兼容之后,依据确定结果形成所述宿主的兼容配置文件。
优选地,
所述兼容配置文件包括与所述宿主兼容的插件信息。
本发明实施例第二方面提供一种检测服务器,所述服务器包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410273180.0/2.html,转载请声明来源钻瓜专利网。