[发明专利]应用崩溃重现方法、装置及移动终端在审
申请号: | 201710709441.2 | 申请日: | 2017-08-17 |
公开(公告)号: | CN107391357A | 公开(公告)日: | 2017-11-24 |
发明(设计)人: | 孙军梅;闫凯 | 申请(专利权)人: | 杭州师范大学 |
主分类号: | G06F11/34 | 分类号: | G06F11/34 |
代理公司: | 北京超凡志成知识产权代理事务所(普通合伙)11371 | 代理人: | 魏彦 |
地址: | 310000 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用 崩溃 重现 方法 装置 移动 终端 | ||
技术领域
本发明涉及互联网技术领域,尤其是涉及一种应用崩溃重现方法、装置及移动终端。
背景技术
目前,智能终端中,用户安装的应用的数量越来越多,应用的来源也是各不相同,这些应用的稳定程度也不一样。对于很多Android应用来说,不可避免的会发生崩溃(Crash)。当Crash发生时,Android系统会杀掉程序,表现就是闪退或者程序已经停止运行,这对用户来说是不友好的,也是开发人员不愿意看到的。
开发人员对于Crash信息的检测与重现很大程度上是依赖于用户的评论与反馈,收集Crash发生时的堆栈信息和一些设备信息等崩溃报告信息。由于Android应用的用户交互通常涉及手势或者传感器交互,这些步骤的重现通常和时序有紧密关系,仅仅依靠自然语言描述并不能够完整重现Crash。
发明内容
有鉴于此,本发明的目的在于提供一种应用崩溃重现方法、装置及移动终端,以提高重现Crash的完整性,便于确定应用发生Crash的原因以及修复应用Crash。
第一方面,本发明实施例提供了一种应用崩溃重现方法,应用于移动终端,所述移动终端安装有待重现崩溃的应用,所述方法包括:
获取与所述应用对应的重现信息,所述重现信息包括所述应用从启动到发生崩溃时移动终端所有输入事件的事件流信息;
将所述事件流信息转换为可执行的重现脚本;
执行所述重现脚本,以重现所述应用崩溃的情景。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述获取与所述应用对应的重现信息,包括:
向监控服务器发送重现信息获取请求,所述重现信息获取请求包括所述应用的名称;
接收所述监控服务器根据所述重现信息获取请求发送的重现文件;其中,所述重现文件包括:操作日志、设备文件和堆栈文件,所述操作日志包括利用Android SDK的getevent工具记录的所述应用从启动到发生崩溃时移动终端所有输入事件的底层事件流信息;
解析所述重现文件,得到重现信息;其中,所述重现信息包括分别与所述操作日志、所述设备文件、所述堆栈文件对应的事件流信息、设备信息、堆栈信息。
结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述解析所述重现文件,得到重现信息包括:
扫描所述操作日志内的事件流信息;
对所述事件流信息进行时间字段的标准化处理,得到标准化处理后的事件流信息。
结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述对所述事件流信息进行时间字段的标准化处理,得到标准化处理后的事件流信息,包括:
对于扫描到的每条事件流信息,将所述事件流信息的时间字段中的括号替换为空格,并将所述时间字段中的短横线替换为小数点;
将替换后的时间字段中的空格切割掉,得到标准化处理后的事件流信息。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述将所述事件流信息转换为可执行的重现脚本,包括:
按照时间字段对应的时间节点对所述事件流信息进行排序;
将排序后的事件流信息转换为可执行的重现脚本。
结合第一方面的第四种可能的实施方式,本发明实施例提供了第一方面的第五种可能的实施方式,其中,所述将排序后的事件流信息转换为可执行的重现脚本,包括:
利用Translate.jar对排序后的事件流信息进行关键信息的提取,生成可执行的重现脚本;其中,所述关键信息包括相邻时间节点的时间间隔、输入设备名称、输入设备类型、按键扫描码和附加码。
结合第一方面,本发明实施例提供了第一方面的第六种可能的实施方式,其中,所述执行所述重现脚本,以重现所述应用崩溃的情景之前,所述方法包括:
启动所述应用;
通过adb shell进入所述移动终端的操作系统,并利用su命令获取所述操作系统的root权限。
结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第七种可能的实施方式,其中,所述执行所述重现脚本,以重现所述应用崩溃的情景,包括:
加载与所述设备信息、所述堆栈信息对应的运行环境;
在所述运行环境下执行所述重现脚本,以重现所述应用崩溃的情景。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州师范大学,未经杭州师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710709441.2/2.html,转载请声明来源钻瓜专利网。