继续Android加固之路,使用现网的apk进行加固测试,可是在安装加固后 apk 的时候,死活都装不上,adb 提示 INSTALL_FAILED_DEXOPT,试了没加固的apk也不行。。。
baidu、google了一圈,没有合适的解决方案。尝试改一下包名,安装成功,断定是手机出了问题。
两条路:
1、重置手机
2、找出不能装的原因
感觉重置手机太费时间了,要重新安装所有应用,那就找原因吧。
怎么找呢?一开始想看Android源码,找找什么情况下会出现 INSTALL_FAILED_DEXOPT,又找了一圈,没找到 installpackage 的具体实现,放弃了。回头再认真看看logcat,终于发现了 /data/dalvik-cache/arm64/ 里面的data@app@xxx.xxxx.xxx-1@base.apk@classes.dex 不能打开,删掉这个文件后,可以装上了。