解决使用MultiDex打包后的apk经360加固之后,在6.0以下的手机上安装出现闪退的情况

MultiDex这个东西在网上都有比较详细的讲解,在这就不再多说什么了,写这一篇博客主要是记录一下踩过MultiDex的坑,如果有遇见过这样的bug 的小伙伴能快速的跳过这个坑(毕竟我也是第一次遇见这样的 坑,在公司搞到晚上十一点才彻底解决)。

先看一下出现的bug截图吧

解决使用MultiDex打包后的apk经360加固之后,在6.0以下的手机上安装出现闪退的情况

这个在当时对MultiDex这个东西了解的并不是特别的多,碰见这个问题也是比较懵逼的,大家可以去其实你不知道MultiDex到底有多坑这篇微博上一探究竟吧。

这个主要是MultiDex生成一个classesN.dex文件的时候出现问题了,这个也是我的前任攻城狮在网上找的统一的解决方案,解决方案上就直接写上了classes2.dex,如下图

解决使用MultiDex打包后的apk经360加固之后,在6.0以下的手机上安装出现闪退的情况

apk在手机上安装的时候并不是一定回生成classes2.dex文件的,Google上介绍的是生成的classesN.dex文件,而非指定说明是classes2.dex文件,所以就导致很多人都是按照一个人的博客复制粘贴,真正的没有人是实际的去打印一下在手机上到底是生成了classes2.dex还是classes.dex文件,也不是说没有在手机上生成classes2.dex就一定生成classes.dex文件,如果是出现这个bug的话最好在这个位置打一下

解决使用MultiDex打包后的apk经360加固之后,在6.0以下的手机上安装出现闪退的情况

这个map很长,里面是什么东西不用管它,再说这些东西都是底层的一些东西,你只需要在里面使用Ctrl+F 在log日志里面搜一下classes这个东西,确定它是生成什么样的后缀名的文件即可,然后在代码里面修改这个文件名的后缀,再次打包加固运行即可。

其实解决bug的方法并不总是按照网上的那些方法来解决,主要的是要找到自己的bug所在,才能真正的解决自己遇到的问题。