【技术实现步骤摘要】
一种应用程序的故障代码确认方法及装置
本申请涉及数据处理
,特别涉及一种应用程序的故障代码确认方法及装置。
技术介绍
随着智能手机的不断发展,在智能手机上运行的应用程序也在不断增多。在推出应用程序的过程中,往往包含两个阶段:第一个是线下开发阶段,第二个是线上发布阶段。在线下开发阶段,往往需要对应用程序进行各种调试测试,以保证应用程序在线上发布时能够正常运行。在线上发布阶段,则需要对应用程序进行版本更新和运行维护。无论是线下开发阶段还是线上发布阶段,应用程序在运行过程中往往不可避免地会出现运行出错的情况。如果应用程序在线下开发阶段时运行出错,往往比较容易处理,可以利用应用程序所处的操作系统对应的调试器进行诊断,从而解决应用程序的源代码中的缺陷。例如对于苹果iOS系统而言,当其中的应用程序在线下开发阶段时运行出错,可以通过Xcode的调试器对运行出错的代码进行诊断。但是如果应用程序在线上发布阶段时运行出错,则无法通过调试器进行调试。此时则往往需要对应用程序运行出错的内存地址进行分析,以确定应用程序的源代码中出错的目标代码段,从而可以对出错的目标代码段进行诊断。当 ...
【技术保护点】
一种应用程序的故障代码确认方法,其特征在于,包括:将应用程序对应的调试符号信息文件解析为符号映射表,所述符号映射表包括由相关联的内存地址与目标代码段参数构成的映射数据,所述目标代码段参数包括类名、函数名或行号中的至少一种;按照预设聚合规则对解析得到的所述符号映射表中的映射数据进行聚合处理,得到聚合后的符号映射表;获取所述应用程序的诊断内存地址;根据所述聚合后的符号映射表,确认与所述应用程序的诊断内存地址相关联的目标代码段参数。
【技术特征摘要】
1.一种应用程序的故障代码确认方法,其特征在于,包括:将应用程序对应的调试符号信息文件解析为符号映射表,所述符号映射表包括由相关联的内存地址与目标代码段参数构成的映射数据,所述目标代码段参数包括类名、函数名或行号中的至少一种;按照预设聚合规则对解析得到的所述符号映射表中的映射数据进行聚合处理,得到聚合后的符号映射表;获取所述应用程序的诊断内存地址;根据所述聚合后的符号映射表,确认与所述应用程序的诊断内存地址相关联的目标代码段参数。2.根据权利要求1所述的应用程序的故障代码确认方法,其特征在于,将应用程序对应的调试符号信息文件解析为符号映射表具体包括:将所述应用程序对应的调试符号信息文件划分为预设数量的文件块;依次读取所述预设数量的文件块中的各个文件块,并将读取的文件块中的二进制信息解析为内存地址与目标代码段参数的映射数据;将解析得到的所述映射数据存储至本地数据库中。3.根据权利要求2所述的应用程序的故障代码确认方法,其特征在于,所述将解析得到的所述映射数据存储至本地数据库中具体包括:按照预先设置的单次存储的限定数据量,将解析得到所述映射数据存储至本地数据库中。4.根据权利要求2所述的应用程序的故障代码确认方法,其特征在于,在将解析得到的所述映射数据存储至本地数据库中之后,所述方法还包括:从存储所述调试符号信息文件的介质中将所述调试符号信息文件删除。5.根据权利要求1所述的应用程序的故障代码确认方法,其特征在于,所述内存地址包括起始地址和终止地址;相应的,所述按照预设聚合规则对解析得到的所述符号映射表中的映射数据进行聚合处理,得到聚合后的符号映射表具体包括:将所述符号映射表中的映射数据按照内存地址中起始地址的大小进行排序,得到排序后的符号映射表;当所述排序后的符号映射表中相邻两组映射数据的类名及函数名对应一致时,按照预设聚合规则将所述相邻两组映射数据进行聚合,得到聚合后的映射数据。6.根据权利要求5所述的应用程序的故障代码确认方法,其特征在于,所述按照预设聚合规则将所述相邻两组映射数据进行聚合,得到聚合后的映射数据具体包括:将所述相邻两组映射数据中较小的起始地址确定为聚合后的映射数据的起始地址;将所述相邻两组映射数据中较大的终止地址确定为所述聚合后的映射数据的终止地址;将所述相邻两组映射数据中的类名和函数名确定为所述聚合后的映射数据的类名和函数名;分别获取所述相邻两组映射数据中由起始地址与行号构成的第一键值对和第二键值对,并将所述第一键值对与所述第二键值对...
【专利技术属性】
技术研发人员:丘立斌,谢劲松,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛,KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。