记录一次因为代码混淆导致的安卓app崩溃的事件

最近公司布置了一个新任务,给一个旧的安卓app增加一个新功能。

功能是替换加密算法,新的算法库由第三法提供,通过jni调用底层C++库。

按照项目需求,修改了代码,调试测试阶段也都运行正常。结果发布的时候,测试反馈app崩溃了。

惊掉!我立即调试运行了代码,发现果然崩了。令人疑惑的是之前在开发调试阶段的时候,一切运行正常,为何打包之后再调试就崩了呢?

检查代码,流程是正确的。

查看异常信息,有"a.b.c.e.f"什么的,是调用第三方库的函数异常了。

没有思路,就问大神。

问了之前一个同事,讲了bug的症状他说是不是因为代码混淆的问题?

尝试将代码混淆关了,果然程序不再崩溃。

记录一次因为代码混淆导致的安卓app崩溃的事件_第1张图片

 

因为这个库开了代码混淆,导致函数名异常,所以异常信息中有"a.b.c.e.f"。因为代码混淆异常函数寻址异常,最终app崩溃。

 

你可能感兴趣的:(代码混淆)