记一次growingio这个**引发的bug

环境说明

公司的项目中是使用了growingio这个sdk,但是我自己做的一个测试项目中并没有引入。突然有一次项目中随便点了一下空白的位置,然后项目就崩溃了!

这是崩溃的报错

java.lang.NoClassDefFoundError: Failed resolution of: Lcom/growingio/android/sdk/agent/VdsAgent;
。。。。
。。。

然后我就懵逼了 开始各种谷歌,百度。我的项目中,并没有引入啊,后来无奈,采取了网上的做法,将install run开启就行了,果然,一开,就好了,然后我就逗逼的继续开发了。



过了n天,别人找我要开发包,我传给他,结果他一打开,就直接crash报错
报如下

Unable to instantiate application com.***.****.App: java.lang.ClassNotFoundException: Didn't find class "com.****.****.App" on path: DexPathList[[zip file "/data/app/com.****.****.-2/base.apk"],nativeLibraryDirectories=[/data/app/com.****.****.-2/lib/arm, /data/app/com.****.****.-2/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]]

然后我就开始sb一样的继续谷歌,百度,按照网上说的,要把install run关掉,但是关掉了 就又要报找不到那个sb的sdk了啊,但是无奈,我就关掉,果然这个bug好了。但是 这就是拆东墙补西墙啊,日,还是自己最开始没有解决的问题引发的问题,

正视这个bug

于是我就开始仔细的查找这个问题,后来在一篇文章中找到了原因

原来是growingio改了v4 包中的class文件,把它们的sdk引入进去了。日,所以 这样真正的解决办法就是改掉引入的v4包版本改成其他版本即可

v7 包中引入了v4包

所以只要把
compile 'com.android.support:appcompat-v7:26.0.0-alpha1' ->改掉后面的版本号就行了(升高, 降低都可以)
查看support历史

总结

以后遇到bug不能糊弄,到最后都是要还的!

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

推荐阅读更多精彩内容