我有一个

Android应用程序,即时通讯是关键功能之一.为了实现IM功能,我们使用基于websocket的推送服务器.

对于我的应用程序,我有一个PushService,在此服务中,我建立了一个websocket连接,它连接到推送服务器并接收推送消息.

当应用程序在前台时(即:当用户使用应用程序时效果很好),代码效果很好,但是当应用程序不在前台时,它会在一段时间后停止接收推送消息(大约1分钟).用户关闭屏幕时出现同样的问题.

我已经使用AlarmManager设置了一个重复任务,它检查websocket连接状态,如果它没有处于连接状态,则重新尝试连接以恢复正常以接收推送消息.

这在Android M下运行良好,例如在Android 5手机上,它很少会错过推送消息.但是在Android M / Android N上,它的效果不如Android 5.x.我可以确认服务本身是否继续运行,请查看“正在运行的服务”.

我注意到从Android M开始,Android引入了Doze和Standby模式,不确定它们是否相关,如果是,我该如何让应用程序继续工作?在我的手机上,微信和Skype Android应用程序运行良好,它背后的机制是什么?我知道FCM是最好的解决方案,但我不能将它用于中国的客户,所以我需要一个解决方法.

编辑:我曾建议使用前台服务,但PM不喜欢通知托盘始终显示在状态栏中,他希望保持清洁.

任何建议将被认真考虑!

android 保持socket连接,android – 如何保持websocket连接活着?相关推荐

  1. android studio socket 失败,Android应用开发Android Studio建立Socket连接失败解决方法

    本文将带你了解Android应用开发Android Studio建立Socket连接失败解决方法,希望本文对大家学Android有所帮助. < Android Studio建立Socket连接失 ...

  2. android 全局 socket,学习Android socket通信之如何解决中文乱码

    socket是网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket.socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄 ...

  3. android传递socket对象,Android Socket通信详解

    一.Socket通信简介 Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是"请求-响应方式",即在请求时 ...

  4. android 全局 socket,Autobahn Android的一个应用示范和全局化

    先介绍下Autobahn Android是什么东西,简单来说,就是github上的一个开源项目,目的是在Android端实现WebSocket的协议,项目的地址在这里,看得懂源码的童鞋可以去看,地址点 ...

  5. android与web服务器建立连接失败,Android websocket连接失败

    我正在开发一个简单的应用程序,它只是应该连接到websocket服务器并发送简单的文本消息.我使用nv-websocket-client作为websocket的库.我似乎无法连接到服务器.我使用wir ...

  6. python长连接框架_python之websocket【长连接的实现】

    websocket技术简单来说就是实现了长连接的技术,相对于传统的ajax或者轮询,websocket主要实现了双通信,并且减少了长轮询的多次请求的时间.总的来说,在很多应用上面能够发挥更好的作用,比 ...

  7. websocket 连接本地端口_聊聊 WebSocket,还有 HTTP

    还记得曾经风靡一时的 QQ 秀聊天室吗?那时,还在上初.高中的我们,QQ 是最常用的聊天交友工具:而 QQ 秀聊天室的出现打破了只能按条件查找好友的局限性,大家可以随意进入聊天室房间,进行在线聊天.怀 ...

  8. WebSocket连接wss链接

    参考链接:http://www.juliankrone.com/connect-and-transfer-data-with-secure-websockets-in-android/ WebSock ...

  9. Android端发送字符到Wed端,Android面试-socket和websocket

    Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是"请求-响应方式",即在请求时建立连接通道,当客户端向服 ...

最新文章

  1. 配置网口相机(大恒水星相机)
  2. 网站推广专员浅析网站推广运营如何提升企业网站转化率?
  3. js对象,原型,call,apply浅析
  4. hdu4847 水题
  5. AI:2020年6月21日北京智源大会演讲分享之09:40Judea教授《 The New Science of Cause and Effect with reflections ondata s》
  6. 网络架构之争:三大主流架构对决,谁是王者?深入思考CNN、Transformer与MLP
  7. Adobe Lifecycle ES的安装截图
  8. linux之sort命令
  9. Redis 分布式锁遇到的序列化问题
  10. Python的第三方库openpyxl
  11. 表必须要有主键吗_玄关隔断什么材质好?玄关隔断必须要做吗
  12. IDEA手动安装Scala插件[zt]
  13. netstat 命令详解
  14. 数据库变为可疑_数据库出现可疑解决办法
  15. Google街景下载
  16. 转轮密码机的加解密算法实现
  17. 如何下载google play上的软件
  18. Linux 基础知识总结
  19. bat脚本实现遍历文件夹下所有jar文件名
  20. https://ac.nowcoder.com/acm/contest/317/D

热门文章

  1. Android自定义控件之实现快速检索
  2. Excel之如何使用VLOOKUP函数合并两张表
  3. 新能源汽车事故频发,国家终于出手,监管总局会拿出什么方案呢?
  4. 助力绵阳市商业银行,打造高效项目生命周期管理平台
  5. 微信、支付宝支付绑定多个商户号
  6. 类似华为麒麟鸿蒙类的名字,华为除了“麒麟”,还有四款顶级芯片,名字背后隐藏寓意令人感动...
  7. 淘宝产品ID在哪儿查询?
  8. native2ascii的使用技巧
  9. 逻辑学自然科学教育计算机,科学网—【逻辑学知识】自然推理系统 - 黄荣彬的博文...
  10. 改计算机名字 和 命令