记录使用网易云信Android客户端的一些坑[持续记录中]

历史重现:

去年11月份,由于某环信通知需要收费了,而且收费还不低,在考察网络上各种IM聊天之后,我们决定花2w1大洋购买了丁三石公司的环信IM聊天工具,网址如下:http://netease.im/。大家也可以上去看一下,个人推荐还是可以的,蛮好用的。如果大家想更换IM工具,网易的还是可以考虑入手的。

主要问题

由于开发周期比较急(当然你也可以说我是懒,我没意见),我们直接使用了它的开源组件uikit,经过三个多月的尝试和使用,感觉还是不错的。当然了,也出现了一下问题,大伙可以参考一下。
错误主要来自bugly记录,本着要对公司项目的缘由和大伙以后少采坑,所以我记录一下有哪些坑,后期我会fork网易的uikit,你直接fork我的源码也可以。

1.android.system.ErrnoException

bugly主要描述为:
这里写图片描述
这个错误来自com.netease.nimlib.dc.a.a.b.a包下的错误,通过沟通网易开发人员,得知UIKIT下使用的是云信sdk4.7,这个bug在sdk4.8之后已经被解决了,所以最好的方法是讲云信SDK更新到5.0(当前时间最新版本,当然官方可能已经更新了)

2.android.os.TransactionTooLargeException

这个bug主要是出现在使用该IM选择手机中的图片问题,如下图:
这里写图片描述这里写图片描述
在初始化时,IM获取了所有的图片信息,封装在了AlbumInfo类中,然后选择某一个具体的相册路径时,使用了Intent传递了这些AlbumInfo参数,如果手机照片数目足够多,而Intent传递参数时是有上限的,因此会造成上述android.os.TransactionTooLargeException这个问题比较棘手,因为修改源码发现涉及到了太多太多的类,所有就采取了自己的方案。
因为我们是整合了网易IM系统,在这个系统之外,我们也有自己的图片选择模块,后来没有办法,我们直接将我们的图片选择模块直接替换到自己系统的图片选择模块上。这个真心比较坑,而且还是线上报出来的问题,比较让人坑爹。说实在的,如果想解决这个问题,这个IM的图片选择框架需要重现去写,不然这个问题一直存在。

3. 各种NullPointerException

这个问题,我一直持保留意见,因为NPE还是存在一些的,这也可能是没有好好测试相关造成的,各位就自求多福吧。这个出现了一两个,平时出现了就修复了,没关心太多了。

后记,这个会一直更新的,出现了问题,我会第一时间上报云信和这篇博客的,愿网易云信和你我都越来越好。

猜你喜欢

转载自blog.csdn.net/u013762572/article/details/80036574