前段时间公司要求开发一个闪光SDK,然后开发好之后,运行在6.0和7.0,以及8.0版本的手机上运行是没有问题的,但是在4.4.4版本的手机上时出现java.lang.VerifyError:com.example.sdk.FlashActivity 报错信息;
然后查阅各种相关的问题,总结大概和三种情况有关:
1、dex文件超过了限制字节,所以app会打两个dex文件,Android在5.0之前系统没有默认把这两个dex文件混合在一起,有可能是这种情况,但是我把apk文件改成zip文件查看,只有一个class.dex文件,也就是说这种情况不成立;
2、jar包冲突造成的,sdk中我使用了三个框架,appcompat,gson和eventbus,然后在主工程中删除掉所有相同的jar包,依然不行;
3、由于jdk的版本不同,在FlashActivity有可能存在低版本不存在api或者类;然后仔细查看代码,还真是,CameraDevice 是5.0之后才存在的,随后删除了这些属性,运行,即可;
简单记录当时的踩坑历程,也算是给自己一个提醒。
java.lang.VertifyError错误踩坑之旅
最新推荐文章于 2024-07-17 07:15:00 发布