默认
发表评论 6
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
先不说技术,我们来说说一个移动端IM的应用层表现,以手机QQ为例

假设此时你的手机正打开qq,也连着WiFi,注意此时WiFi是好的,但恰好你家的宽带猫网络出了问题,上不了网。因为此时手机只知道连接着的网络没有断开(因为WiFi信号是好的),但它并不知道WiFi路由器到运营商的这条通路已经不能连通上。

你恰在此时尝时用手机QQ向某好友发送消息,过一会那条消息边上出出现一个红色的小图标,就像下图这样:
[已回复] MessageQoSEventImpl messagesLost回调函数 不太懂怎么使用_a044ad345982b2b7f3da466533adcbef77099bcd.jpg

MobileIMSDK的这个MessageQoSEventImpl.messagesLost(..)回调函数就是解决这个问题,它遇到上面手机QQ上消息发不出去时,就会通过这个回调告诉你刚才你发出的消息有几条是没有成功实时送达的,是否明白?
评论 6
引用:吴佳同 发表于 2017-09-27 17:15
明白了
也就是说在重试规定的次数 仍然发不出去,就会把 没发出去的Protocal 告诉 用户。

通常像手机qq、微信这样的IM,发送出去的消息会首先离线存储在本地的sqlite中,如果要重发根据消息id(就是MobileIMSDK里的fingerPrint指纹码)就可以拿到这个消息的数据。
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部