[发明专利]应用异常处理方法、装置以及计算机可读存储介质有效
申请号: | 202111332266.2 | 申请日: | 2021-11-11 |
公开(公告)号: | CN113791809B | 公开(公告)日: | 2022-03-04 |
发明(设计)人: | 苟亚明 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F8/41;G06F11/07 |
代理公司: | 深圳翼盛智成知识产权事务所(普通合伙) 44300 | 代理人: | 李玉婷 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用 异常 处理 方法 装置 以及 计算机 可读 存储 介质 | ||
1.一种应用异常处理方法,其特征在于,包括:
在检测到目标应用中目标程序对应的程序更新包时,获取所述程序更新包对应的目标函数,所述目标函数用于替换、更改或扩充所述目标程序原来的函数;
获取所述目标应用中与所述目标程序匹配的待编译工具包,并根据所述目标函数对所述待编译工具包进行编译处理,得到编译后的目标工具包;
当检测到所述目标工具包中包含运行错误的异常程序函数时,向服务器请求获取所述异常程序函数对应的修复文件;
读取所述修复文件中的目标程序函数及对应的修复代码文本;
根据所述目标程序函数及对应的修复代码文本对所述目标应用中的异常程序函数进行处理,得到处理后的程序运行结果;
其中,所述根据所述目标函数对所述待编译工具包进行编译处理,得到编译后的目标工具包,包括:对所述待编译工具包中的编译配置进行初始化处理,得到初始化后的待编译子工具包,根据所述目标函数对所述初始化后的待编译子工具包进行编译处理,得到编译后的目标工具包;
其中,所述根据所述目标函数对所述初始化后的待编译子工具包进行编译处理,得到编译后的目标工具包,包括:获取所述初始化后的待编译子工具包对应的编译缓存信息;从所述编译缓存信息中读取与所述目标函数匹配的待编译函数信息;对所述待编译函数信息进行编译处理,得到编译后的目标工具包;
其中,所述对所述待编译函数信息进行编译处理,得到编译后的目标工具包,包括:获取所述目标函数对应的目标函数信息;获取预设的函数标记字符,并建立所述预设的函数标记字符与目标函数信息之间的关联关系,得到具有关联关系的函数标记符;利用所述具有关联关系的函数标记符对所述待编译函数信息进行标记处理,得到编译后的目标工具包。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标程序函数及对应的修复代码文本对所述目标应用中的异常程序函数进行处理,得到处理后的程序运行结果,包括:
将所述目标程序函数加入至待处理队列;
将所述待处理队列中与所述异常程序函数对应的目标程序函数确定为待执行程序函数,建立所述待执行程序函数与所述对应的修复代码文本之间的映射关系,得到待执行程序逻辑;
当检测到所述目标应用请求执行所述异常程序函数时,运行所述待执行程序逻辑,得到处理后的程序运行结果。
3.根据权利要求2所述的方法,其特征在于,所述建立所述待执行程序函数与所述对应的修复代码文本之间的映射关系,得到待执行程序逻辑,包括:
将所述修复代码文本注入所述待执行程序函数,得到具有关联关系的目标程序逻辑;
将所述目标程序逻辑确定为所述异常程序函数对应的待执行程序逻辑。
4.根据权利要求1所述的方法,其特征在于,所述对所述待编译工具包中的编译配置进行初始化处理,得到初始化后的待编译子工具包,包括:
识别所述待编译工具包中的编译配置;
根据预设的编译初始化函数对所述编译配置进行更新,得到更新后的编译配置;
将包含所述更新后的编译配置的待编译工具包确定为初始化后的待编译子工具包。
5.根据权利要求1所述的方法,其特征在于,还包括:
获取与所述目标函数关联的函数启动逻辑,及获取所述目标函数对应的函数代码文本;
将所述函数启动逻辑与所述函数代码文本进行融合,得到融合后的第二目标函数;
则所述获取所述目标函数对应的目标函数信息,包括:
获取所述第二目标函数对应的目标函数信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111332266.2/1.html,转载请声明来源钻瓜专利网。