默认
发表评论 5
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
[已回复] 急,急~~~我用MobileIMSDK写的IM收不到信息
阅读(45951) | 评论(5 收藏 淘帖
如题~客户端1成功发送信息后,为什么客户端2收不到信息!!   
一下是log信息:

E/ChatBaseEventImpl: 【DEBUG_UI】网络连接出错关闭了,error:-1

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

标签:MobileIMSDK
上一篇:[已回复] 为何我的MoboleIMSDK客户端发送的信息接收方收不到?下一篇:[已回复] 还是关于MobileIMSDK的网络连接出错的疑问!
推荐方案
评论 5
你这种情况应该是你的调试环境网络有问题,你得先把调试环境的网络搞通吧,很多时候你的手机无线局域网跟内部服务器有线网根本就不通。

看看这两个贴子吧,仔细看看我的回复,里面有详细的网络诊断方法:http://www.52im.net/thread-211-1-1.htmlhttp://www.52im.net/thread-231-1-1.html

刚接触这种移动端通信应用的人,很容易遇到这样的问题,多思考原因哦。
引用:JackJiang 发表于 2016-04-19 11:26
你这种情况应该是你的调试环境网络有问题,你得先把调试环境的网络搞通吧,很多时候你的手机无线局域网跟内 ...

如果说网络不通的话,多数时间是可以收到信息的,但是也有时候会出现收不到信息这种情况。这也是网络的原因???
引用:hahacheng 发表于 2016-04-19 12:51
如果说网络不通的话,多数时间是可以收到信息的,但是也有时候会出现收不到信息这种情况。这也是网络的原 ...

建议你从两个方面来评估这个问题:
1)用这个工具http://www.52im.net/thread-145-1-1.html,以及服务端的ping工具,进行客户端和服务端的双向网络评估,看看你的网络情况到底怎么样(ping丢包率与你看到的程序的反应是否一致);
2)假设第1)里,你得出的结论是网络确实过一段时间会出现状况,那么程序现波动的表现也应是算法范围内的容错和QoS机制的事情。那么此种情况下,你要考查的就是在消息没被送达的情况下它应该会通过客户端的回调或服务端的回调告诉你。

总之,网络状况差或不差,这是现实情况,程序是改变不了的,但MobileIMSDK所解决的问题就是:无论网络怎么样,它都迟全力帮你送达,即使送不达,它也会通过回调告诉你没有送达(比如在APP上的表现,就如主流IM一样,会告诉你消息未发送成功。或者在服务端的表现就是通过回调告诉你应离线存储起来),而不应出现莫名丢消息这种消息黑洞的情况发生。
我建议你同时去体验下RainbowChat:http://www.52im.net/forum-90-1.html,看看它的表现如何,因为它从UI和服务端都是全功能实现,如果你的网络真有问题,看看它的表现是否如你Demo的效果一样。如果跟你的Demo不一样,显然是你的Demo还不够完善(也许回调已经告诉你结果,你没有注意也有可能,Demo并非全功能,界面上不一定能看出所有情况),而非MobileIMSDK的算法缺陷。
lz 移动网络比PC网络要脆弱的多,我以前测试的时候,极端情况下,30秒左右,整个手机的无线网就会被路由重置,3G或WiFi都有这种可能发生,这是他们的网关算法导致,程序是避免不了的。而之所以移动端的通信程序难写,也就难在这里了,因为网络情况千别万化,需要通信程序的算法能够自已侦测这种变动并治愈它,就ok了。MobileIMSDK这一块还是考虑的很全面的,你可以模拟一下进行测试,比如3g、wifi来回切换(当然,最好模拟的自然一点,不然一秒一切,这程序因为算法的延迟量,你也看不出什么变化)。。。
签名: 该会员没有填写今日想说内容.
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部