[发明专利]加载库文件的方法及装置有效
申请号: | 201710203810.0 | 申请日: | 2017-03-30 |
公开(公告)号: | CN107038045B | 公开(公告)日: | 2022-10-14 |
发明(设计)人: | 芦艺;王辉;柳永峰;钟雨;王梓 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;熊永强 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 加载 文件 方法 装置 | ||
本发明实施例公开了一种加载库文件的方法,包括:检测业务调用过程,根据业务调用过程确定目标库文件;在缓存目录中查找所述目标库文件,在未查找到时,确定与所述目标库文件对应的库文件服务器;向所述库文件服务器发起与所述目标库文件对应的下载请求;访问所述库文件服务器,将所述目标库文件由所述库文件服务器下载到所述缓存目录中;校验所述缓存目录中的目标库文件是否与库文件服务器上存储的文件版本一致,若是,则通过将所述目标库文件添加到类加载路径中加载所述目标库文件。采用本发明,可提高热更新库文件的可靠性。
技术领域
本发明涉及计算机技术领域,尤其涉及一种加载库文件的方法及装置。
背景技术
应用程序(例如Android App)在执行时,由于需要实现多个功能,因此需要依赖多个与各个功能对应的库文件。但为了使应用程序的安装包数据量不会变得过大,因此对于一些不常使用的功能对应的库文件,并不会被打包到安装包中,而只有在应用程序执行过程中运行响应的功能模块时,才会动态地去指定的地址下载该功能模块对应的库文件。在应用执行过程中动态地加载库文件也叫库文件的热更新。
然而,目前热更新的方案的成功率较低,主要表现在下载的库文件可能被劫持,或由于网络波动造成下载不全,在拷贝库文件到App的加载路径目录的过程中拷贝失败造成库文件不全,造成加载文件失败以及因失败造成的重复下载等问题。因此,传统技术中应用的库文件的热更新的方案的可靠性不足。
发明内容
基于此,为解决传统的应用库文件的热更新的方案的可靠性不足的技术问题,特提出了一种加载库文件的方法,包括:
检测业务调用过程,根据业务调用过程确定目标库文件;
在缓存目录中查找所述目标库文件,在未查找到时,确定与所述目标库文件对应的库文件服务器;向所述库文件服务器发起与所述目标库文件对应的下载请求;
访问所述库文件服务器,将所述目标库文件由所述库文件服务器下载到所述缓存目录中;
校验所述缓存目录中的目标库文件是否与库文件服务器上存储的文件版本一致,若是,则通过将所述目标库文件添加到类加载路径中加载所述目标库文件。
此外,为解决传统的应用库文件的热更新的方案的可靠性不足的技术问题,特提出了一种加载库文件的装置,包括:
目标库文件确定模块,用于检测业务调用过程,根据业务调用过程确定目标库文件;
目标库文件查找模块,用于在缓存目录中查找所述目标库文件,在未查找到时,确定与所述目标库文件对应的库文件服务器;向所述库文件服务器发起与所述目标库文件对应的下载请求;
目标库文件缓存模块,用于访问所述库文件服务器,将所述目标库文件由所述库文件服务器下载到所述缓存目录中;
第一校验模块,用于校验所述缓存目录中的目标库文件是否与库文件服务器上存储的文件版本一致;
目标库文件加载模块,用于在所述校验模块的结果为是时,通过将所述目标库文件添加到类加载路径中加载所述目标库文件。
实施本发明实施例,将具有如下有益效果:
采用了上述加载库文件的方法和装置之后,在业务调用过程需要调用安装包外部的库文件时,先将确定库文件,再将库文件从服务器下载到新增的缓存目录中,然后对库文件进行校验,在校验无误后,才会通过类加载器加载库文件,这样就使的库文件下载失败或库文件被恶意替换时,能够阻止加载过程,从而提高了安全性和可靠性。
另外,后续业务调用再次需要加载该库文件时,可直接在缓存目录中查找库文件,并对缓存目录中的库文件进行校验,校验通过后直接加载缓存目录中的库文件,而不需要再次由服务器下载文件,因此还节省了网络流量。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710203810.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种物料包垛码机
- 下一篇:带有多方位护板机构的码垛机