[发明专利]一种SDK异常排查方法及装置、计算机可读存储介质在审
申请号: | 202010442819.9 | 申请日: | 2020-05-22 |
公开(公告)号: | CN111752735A | 公开(公告)日: | 2020-10-09 |
发明(设计)人: | 梁少泽 | 申请(专利权)人: | 网宿科技股份有限公司 |
主分类号: | G06F11/07 | 分类号: | G06F11/07 |
代理公司: | 北京华智则铭知识产权代理有限公司 11573 | 代理人: | 陈刚 |
地址: | 200030 上海市徐汇*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 sdk 异常 排查 方法 装置 计算机 可读 存储 介质 | ||
本发明公开了一种SDK异常排查方法,所述方法包括:获取APP运行时的SDK异常信息;根据所述SDK异常信息修复SDK代码,将修复后的所述SDK代码打包生成修复后的dex文件;重新启动所述APP,调用SDK启动接口,加载所述修复后的dex文件,并将所述修复后的dex文件合并至原始SDK后并执行。本发明还提供了一种SDK异常排查装置、计算机可读存储介质。本发明可以实现在无需APP开发者协助的情况下,完成对SDK异常问题的排查、修复、验证,从而减少SDK开发者与APP开发者的沟通。
技术领域
本发明涉及计算机技术领域,特别涉及一种基于SDK异常排查方法及装置、计算机可读存储介质。
背景技术
SDK(Software Development Kit,软件开发工具包)是为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。在SDK嵌入APP(Application,应用软件)后,APP的运营过程中,SDK可能会出现异常,SDK开发者则需及时排查APP中SDK的异常问题。
现有的SDK异常问题排查方法。通常为:SDK嵌入APP后,若SDK出现异常,则将异常信息反馈给SDK开发者。SDK开发者根据异常信息向SDK中添加测试代码,并打包发送给APP开发者重新嵌入并执行,在执行过程中,APP开发者查看APP运营过程中SDK是否仍然存在异常,若存在则将异常信息反馈给SDK开发者,然后继续反复执行上述操作过程,直至SDK的异常问题修复。在实现本发明的过程中,发明人发现现有的SDK异常问题排查方法至少存在以下问题:
为了定位以及修复异常问题,并验证异常问题的修复结果,需要APP开发者反复协助SDK开发者向APP中重新嵌入修复后的SDK,并需要双方进行反复沟通。
发明内容
为了解决现有技术中的问题,本发明实施例提供了一种SDK异常排查方法及装置、计算机可读存储介质。所述技术方案如下:
第一方面,提供了一种SDK异常排查方法,所述方法包括:
获取APP运行时的SDK异常信息;
根据所述SDK异常信息修复SDK代码,将修复后的所述SDK代码打包生成修复后的dex文件;
重新启动所述APP,调用SDK启动接口,加载所述修复后的dex文件,并将所述修复后的dex文件合并至原始SDK后形成新SDK并执行;
根据所述新SDK的执行结果与执行过程日志,验证所述SDK异常信息是否修复。
进一步的,在将修复后的所述SDK代码打包生成所述修复后的dex文件之后,所述方法还包括:将所述修复后的dex文件发送至外部存储空间。
进一步的,所述调用SDK启动接口,加载所述修复后的dex文件,并将所述修复后的dex文件合并至原始SDK后形成新SDK并执行具体包括:
判断所述外部存储空间是否存在所述修复后的dex文件;
若存在,则通过DexClassLoader加载所述修复后的dex文件,通过PathClassLoader加载所述原始SDK;
将所述修复后的dex文件合并至所述原始SDK,形成新SDK,其中所述修复后的dex文件中包含的类置于所述原始SDK所包含的类之前;
将所述新SDK重新赋值给所述PathClassLoader加载并执行。
进一步的,在获取APP运行时的SDK异常信息之前,所述方法还包括:执行所述原始SDK或者所述新的SDK,并判断是否异常。
进一步的,所述根据所述SDK异常信息修复SDK代码,包括:
根据所述原始SDK的代码混淆规则,生成所述修复后的dex文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于网宿科技股份有限公司,未经网宿科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010442819.9/2.html,转载请声明来源钻瓜专利网。