这不是一个现成的解决方案的问题,包括来源,但需要获得解决方案的想法/提示/提示。
假设我有一个使者。用户A键入一些必须发送给用户B的文本。当用户B不在线或者必须在用户B可用时立即将其发送给用户B时,该文本首先被发送到中央服务器。 / p>
对于第二种情况,这里应该在移动设备上使用什么机制?
1。)让用户B的信使打开与服务器的客户端连接,并从那里永久接收数据对我来说听起来不太好。当连接中断时,必须重新建立 - 可能直到下一次中断。因此,建立这样的连接可能会导致流量和消耗功率而不会在其间传输任何有效载荷。
2.。)让信使使用ServerSocket并让中央“服务器”连接到设备有同样的问题:连接可能会中断。
所以我的问题是:是否有可用于移动设备的机制,只有在可用时才传输此类消息,并且仅在需要时才建立连接?在客户端和服务器之间没有永久连接的某种自动推送通知?
答案 0 :(得分:1)
建议使用GCM for Android。 Here你有很好的教程。您还可以使用Parse等框架。
答案 1 :(得分:0)
无论哪种 1.在客户端和服务器之间建立持久连接。客户端可以以预定的间隔轮询以检查传入的有效负载。您可能必须优化“轮询”逻辑以避免频繁的“轮询”有效负载
或者
答案 2 :(得分:0)
不要使用轮询。使用Google Cloud Messaging。 suseba回答在“Here”链接中不推荐使用gcm的引用。
使用GoogleCloudMessaging。附带GooglePlayServices Library
文档:http://developer.android.com/google/gcm/client.html
,来源是:https://code.google.com/p/gcm/source/browse/#git%2Fgcm-client
你只需要导入库