Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 推送消息使用什么机制?_Android_Networking_Push Notification - Fatal编程技术网

Android 推送消息使用什么机制?

Android 推送消息使用什么机制?,android,networking,push-notification,Android,Networking,Push Notification,这不是一个包含源代码的现成解决方案的问题,而是一个获取解决方案的想法/提示/提示的问题 假设我有个信使。用户A键入一些必须发送给用户B的文本。此文本首先发送到中央服务器,当用户B不在线时存储该文本,或者当用户B可用时必须立即发送给用户B 对于第二种情况,在移动设备上应该使用什么机制 1.)让用户B的messenger打开到服务器的客户端连接,并从那里永久接收数据对我来说不太好。当连接中断时,必须重新建立连接-可能直到下一次中断。因此,建立这样的连接可能会导致通信量和功耗,而不会在其间传输任何有效

这不是一个包含源代码的现成解决方案的问题,而是一个获取解决方案的想法/提示/提示的问题

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

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

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

2.)让messenger使用ServerSocket,并让中央“服务器”连接到设备。该设备存在相同的问题:连接可能会中断

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

建议使用。你有很好的教程。您也可以使用像。

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

  • 当消息可用时,服务器端可以向客户端推送WAP推送,然后客户端唤醒并重新获取有效负载

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

    使用GoogleCloudMessaging。附带谷歌游戏服务库

    文件:

    资料来源是:


    你只需要导入库

    你读过android提供的GCM吗