默认
发表评论 8
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
请教Android 端UDP监听停止问题
阅读(49855) | 评论(8 收藏 淘帖
在Android端,手机屏幕熄灭开始一段时间,可以正常接收到消息,熄灭后1分钟左右,控制台打印【IMCORE】本地UDP监听停止了(socket被关闭了?),。然后控制台一直重复打印 请教Android 端UDP监听停止问题_QQ图片20160701135715.png 。请问这个是为什么?

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

上一篇:求教关于 socket 和 http 的关系下一篇:android 熄屏一段时间后CPU停止运行问题
推荐方案
评论 8
引用:JackJiang 发表于 2016-07-01 15:32
我忽然想到,你这线程并没有死,因为你说它“一直在打印log”,你可查下那个异常。
但如果是你的手机省电 ...

恩,我放在service里面启动的,进程没死,因为我在seivice里面加了个线程每间隔3秒打印一条日志它会一直打印,但是IM的UDP过一会就报监听停止,网络也没断,我尝试给我QQ发消息手机QQ还是可以收到的。我尝试在在源码这个catch报错地方设置一个标志,报错后调用service里面的一个重置方法,重置实现的具体思路是先调用IMClientManager.getInstance(this).release();,然后初始化发送登录包结果。结果是加了IMClientManager.getInstance(this).release();这行代码后,一次也登录不成功。
引用:JackJiang 发表于 2016-07-01 15:32
我忽然想到,你这线程并没有死,因为你说它“一直在打印log”,你可查下那个异常。
但如果是你的手机省电 ...

对了我发现一个奇怪的问题,打印检测当前网络状态的时候(我是调用你源码的方法)手机黑屏一会就UDP掉线同时打印:【IMCORE】【本地网络通知】检测本地网络连接断开了!但是我QQ为什么这个时候还能收到消息?这个是QQ的特殊保活机制吗
引用:JackJiang 发表于 2016-07-01 22:47
你的是小米手机吗?

别跟qq比,市面上的手机都会对qq和微信做特殊处理,一般的app不会有这待遇

恩,小米手机。好的谢谢。
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部