0

这不是针对包括资源在内的即用型解决方案的问题,而是针对获取解决方案的想法/提示/提示的问题。

假设我有一个信使。用户 A 键入一些必须发送给用户 B 的文本。该文本首先被发送到中央服务器,当用户 B 不在线时,它被存储在那里,或者当用户 B 可用时,它必须立即发送给用户 B。

对于第二种情况,在移动设备上应该使用什么机制?

1.) 让用户 B 的信使打开到服务器的客户端连接并从那里永久接收数据对我来说听起来不太好。当连接中断时,它必须重新建立 - 可能直到下一次中断。因此,建立这样的连接可能会导致流量并消耗电力,而不会在两者之间传输任何有效载荷。

2.) 让信使使用 ServerSocket 并让中央“服务器”连接到设备有同样的问题:连接可能会中断。

所以我的问题是:是否有一种机制可用于移动设备,仅在它们可用时才传输此类消息并仅在需要时建立连接?某种没有客户端和服务器之间永久连接的自动推送通知?

4

3 回答 3

1

推荐使用GCM for Android在这里你有很好的教程。您还可以使用Parse 之类的框架。

于 2013-09-30T09:45:13.953 回答
0

要么 1. 在客户端和服务器之间建立持久连接。客户端可以按预定义的时间间隔轮询以检查传入的有效负载。您可能必须优化“轮询”逻辑以避免频繁的“轮询”有效负载

或者

  1. 当消息可用时,服务器端可能会向客户端推送 WAP 推送,然后客户端唤醒并检索有效负载。
于 2013-09-30T11:04:29.323 回答
0

不要使用轮询。使用谷歌云消息。suseba 回答“此处”链接中不推荐使用的 gcm 引用。

使用 GoogleCloudMessaging。附带 GooglePlayServices 库

文档:http: //developer.android.com/google/gcm/client.html

来源是:https ://code.google.com/p/gcm/source/browse/#git%2Fgcm-client

你只需要导入库

于 2013-09-30T15:06:19.993 回答