[发明专利]一种文件处理方法及装置有效

专利信息
申请号: 201710200198.1 申请日: 2017-03-30
公开(公告)号: CN107391223B 公开(公告)日: 2021-03-19
发明(设计)人: 苟晓东 申请(专利权)人: 创新先进技术有限公司
主分类号: G06F9/455 分类号: G06F9/455
代理公司: 北京晋德允升知识产权代理有限公司 11623 代理人: 吴绍群
地址: 开曼群岛大开曼岛乔治镇医院*** 国省代码: 暂无信息
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 文件 处理 方法 装置
【说明书】:

本申请实施例公开了一种文件处理方法及装置,所述方法包括:针对应用程序的待编译文件,确定所述应用程序包含的类,在编译所述待编译文件时,向所述待编译文件中添加虚拟机包含的类,建立所述应用程序包含的类与添加的类之间的引用关系,生成可执行文件。通过本方法,采用重复定义类的方式,使得在DexOpt阶段可执行文件中的各类均不会被赋予校验标识,也就不会触发校验错误,从而保证了虚拟机正常加载补丁文件,不出现应用程序闪退的现象。

技术领域

本申请涉及计算机技术领域,尤其涉及一种文件处理方法及装置。

背景技术

目前,对于安卓(Android)系统而言,通过其自身的Dalvik虚拟机(DalvikVirtual Machine,DVM)运行安装于Android系统上的各类应用程序。

具体而言,如图1a所示,在编译阶段,可将基于Java语言开发的应用程序的类(class)文件(如:class.jar文件),转换为一种适用于DVM的可执行文件----Dex文件(如:class.dex文件)。从而,在运行阶段,DVM便可加载该 Dex文件实现应用程序的运行。

实际应用时,可能会出现某些class出错而导致应用程序的运行故障(如:应用程序内的某项功能出现bug)。在此情况下,所采用的故障修复方式通常为:针对需要修复的class,重新编译生成Dex补丁文件(即,Patch.dex,该补丁文件也属于Dex文件),并将该Dex补丁文件加载在DVM中,用以替换出现故障的类。如图1b所示,对于某一个应用程序而言,DVM会将与该应用程序有关的Dex文件形成一个文件序列,逐一加载各Dex文件。在修复时,可将Dex 补丁文件加载至该文件序列的最前端,使得DVM在加载文件序列时,优先加载该Dex补丁文件,从而达到修复出错class的目的。

需要说明的是,DVM在加载Dex文件时,会执行一种称为DexOpt的操作,用以对Dex文件进行优化和校验(如:优化Dex文件中的代码格式、校验Dex文件中class是否能正常运行等,其中,DexOpt的校验操作发生在首次加载Dex文件时,属于一次性校验)。若某一class通过校验,则DVM会针对该class生成一种校验标识(即,Verified标识)。其中,基于DexOpt的校验机制,针对携带有校验标识的class,需保证与其具有引用关系的class均在同一个Dex文件中,否则会发生校验错误(verify error)。

然而,在实际应用中,所要修复的class(即,Dex补丁文件中所包含的class),可能与文件序列中其他Dex文件内的class之间具有引用关系,而如果其他Dex 文件中的class已携带有Verified标识,那么,便会触发校验错误。一旦出现校验错误,则DVM将停止运行与该应用程序有关的Dex文件,进一步致使应用程序出现闪退等现象,严重影响应用程序的正常运行。

发明内容

本申请实施例提供一种文件处理方法及装置,用以解决加载Dex补丁文件出现校验错误的问题。

本申请实施例提供的一种文件处理方法,所述方法包括:

针对应用程序的待编译文件,确定所述应用程序包含的类;

在编译所述待编译文件时,向所述待编译文件中添加虚拟机包含的类;

建立所述应用程序包含的类与添加的类之间的引用关系,生成可执行文件。

本申请实施例提供的一种文件处理装置,所述装置包括:

确定模块,针对应用程序的待编译文件,确定所述应用程序包含的类;

编译模块,在编译所述待编译文件时,向所述待编译文件中添加虚拟机中包含的类;

生成模块,所述应用程序包含的类与添加的类之间的引用关系,生成可执行文件。

本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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