ACCS简介
- ACCS(Alibaba cloud channel service) 是阿里自建的推送通道服务。其核心功能是维持两个长连接在 SDK和EMAS服务器之间传递数据:应用内连接和静默连接。SDK中存在一些保活和心跳机制(心跳时长45秒)。
EMAS如何判断设备在线和离线
- 本质区别: EMAS的在线和离线的唯一判断标准就是上边的ACCS长连接服务是否能继续保持通信。SDK会自动轮询检查这一状态。
- 一旦长连接断开(应用内连接和静默连接都断开),即认为这个设备处于离线状态。
- 同理,SDK会不断尝试建立连接,一旦某一次请求到达了服务器并且重新建立了长连接,服务器即认为此时app处于在线状态。
- 现象区别:一般情况下,app在前台是通常是在线的,app被杀死时会变成离线。
- 当app没有被杀死而是切换到了后台则是一个模糊界限,某些机型会默认进入后台就会切断这个app的网络连接,或者手机内存不足时也会杀死后台app的进程等等各种优化手段。当然也存在app切换到后台较长一段时间仍能够继续保持长连接的情况。
- 对于安卓定制设备来说,系统应用可以定制一些保活措施,保证app一直可以在线状态。
长连接使用到的域名
- 【SDK3.8.2及之前】acs4public.m.taobao.com、accscdn4public.m.taobao.com
- 【SDK3.8.2之后】msgacs.cn-zhangjiakou.aliyuncs.com、jmacs.cn-zhangjiakou.aliyuncs.com
更多信息
某些物联网卡或是公司内网可能会误屏蔽EMAS域名导致长连接无法建立,现象是SDK无法注册成功,建议升级SDK最新版本。若还是无法建立长连接,请联系技术支持。
适用于
- 移动推送
文档内容是否对您有帮助?