DexClassLoader在5.0以上遇到的错误

具体错误信息如下


错误信息.png

4.X手机正常,5.X以上会出异常

java.io.IOException:Failed to open zip archive"/../../../swr.jar"

也就是说DexClassLoader解压jar包失败.
百度,goole了一下,也没有什么好的解决办法,然后就开始排查文件,发现释放到Files目录下的jar要比原始的jar尾部多几十个字节.原来4.X手机对jar包没有强校验机制,就算是jar尾部多出几十个字节,只要jar可以正常运行就不会出错,但是5.0以上手机对jar有强校验机制,也就是即使jar只是尾部多出几十个字节,系统也不会去解压,而是会抛出
Suppressed: java.io.IOException: Failed to open zip archive '/data/data/com.e.h.hms/files/swr.jar'
从而导致DexClassLoader加载失败.
zhiy

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容