DexClassLoader在5.0以上遇到的错误

具体错误信息如下


DexClassLoader在5.0以上遇到的错误_第1张图片
错误信息.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

你可能感兴趣的:(DexClassLoader在5.0以上遇到的错误)