手机即时通信中,如何解决网络信号不稳定?

小竹z 2015-02-13 10:46:04
rt.小弟最近做一个手机端即时通信,就像微信的对讲机一样。发现手机信号很不稳定,有时候有网络信号(电信3G),但总是连接不到服务器,有时候连接上了,传输数据时,又没信号了,关键是此时手机端和server端都没即时发现没信号了,仍在继续发数据。我现在做的方式是应用层加入消息应答,每发送一个消息,需要对方确认该消息,超时重发整个消息,2次之后仍没回复,就认为连接断开了,但这样又会降低效率。亲们,你们是如何做的呢?
...全文
371 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
foxavideo 2015-03-06
  • 打赏
  • 举报
回复
引用 3 楼 zgxyz2010 的回复:
我现在的做法是超时重传2次,但是tcp本身是可靠的,是不是不用重传,在规定时间内,没回复就认为网络断开了?
tcp是可靠协议,所以你不要自己设计重传协议,你只需要检测当前链接状态和发送状态即可,参看: http://www.itye.org/archives/2245
shenyi0106 2015-02-13
  • 打赏
  • 举报
回复
这个你没办法吧,无线信号是硬件层面的东西。 就好比,你要发消息给美利坚合众国,但是海底光缆被鲨鱼要断了,你软件写的再好,你的消息也发不过去的
ilearn 2015-02-13
  • 打赏
  • 举报
回复
是用WEB SERVICE去做的,报文是JSON,必须用HTTP WEB SERVICE去做
小竹z 2015-02-13
  • 打赏
  • 举报
回复
我现在的做法是超时重传2次,但是tcp本身是可靠的,是不是不用重传,在规定时间内,没回复就认为网络断开了?
招财猫_Martin 2015-02-13
  • 打赏
  • 举报
回复
从你描述的问题来看,是要加入异常检测机制。 但是,如果要解决手机信号的问题,那只有换手机,或者换个信号好的地方了。

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧