听云SDK
听云的人呢来我们公司来了好多次了,想让我们接入。
我们就接入了试试。这个sdk是通过java探针实现,具体还没太了解,后面再研究
探针(占位)
缺点
导致了as编译速度的降低,我们的app编译时的一大半时间都被听云给消耗了。
使用听云踩的坑
- 影响新开发的app debug运行
我们项目在用了听云之后,后来,我又新开发了一个项目,项目里面使用了okhttp进行网络请求,在模拟器和真机上debug运行,出现了如下的崩溃:
Java.lang.NoClassDefFoundError: com.networkbench.agent.impl.instrumentation
后来由于进度紧急原因,不得已在这个项目里也添加了听云的依赖。顿时感觉听云好流氓,真恶心。
后来在网上也看到一篇关于我这遇到的这种情况的文章,应该是个解决方案。
http://blog.csdn.net/google_acmer/article/details/54913565
原因:因为Android Studio为了提高编译的速度,加入了 daemon的缓存机制,这个缓存导致调用听云的SDK,产生一些莫名其妙的Bug,因此解决问题的方法就是手动去清理一下缓存。
解决方案:
1、Mac环境的缓存路径是:
/Users/用户名/,gradle/daemon/3_3【版本号】
进去删除registry_bin和registry_bin.lock两个文件即可。
2、Windows下面相比较为简单。
例如:C:\Users\用户名.gradle\daemon\3_3【版本号】下面的,同样也删除以上两个文件即可。
卸载听云踩的坑
现在我们的项目不在使用听云了,感觉还是很开心的。终于不要再使用这玩意了。
直接把听云相关的配置都去掉了,包括听云的classpath和dependencies
我们几个同事本以为去掉了就完事了,然后运行程序,这时候又出现崩溃了,还是和上面的崩溃一样
Java.lang.NoClassDefFoundError: com.networkbench.agent.impl.instrumentation
解决办法
同事分别用了以下几个办法好了
- 把as工程clean以下,然后rebuild一下就ok了
- 如果上面方法不行,就重启计算机,再重新执行上面步骤
我比较倒霉啊,上面两种办法都不行,后来甚至是重启电脑,重新拉取代码,把代码换个目录。后来还是不行。没办法了重新安装android studio!!
注意点:卸载android studio一定要把Android User Settings打钩了。不然,卸载了再安装还是不行滴
卸载android studio之后,再重新安装就可以正常使用了。。好吧o(╯□╰)o
参考
http://blog.csdn.net/u012832871/article/details/70842928
http://blog.csdn.net/google_acmer/article/details/54913565