如何将Heartbeat发送到GCM Server

时间:2015-01-28 10:16:00

标签: android google-cloud-messaging

如何将心跳发送到GCM服务器。这样我们就可以保持连接的存在。

我使用以下代码将心跳发送到GCM服务器。

mContext.sendBroadcast(new Intent("com.google.android.intent.action.GTALK_HEARTBEAT"));
mContext.sendBroadcast(new Intent("com.google.android.intent.action.MCS_HEARTBEAT"));

但它又推迟了这条消息。

在长时间闲置状态后,我向我的应用和gmail应用发送了通知。 Gmail应用会及时收到通知而我的应用不会收到通知。

怎么回事。 AFAIK GCM使用端口5228接收消息。然后为什么gmail按时收到消息,我的应用程序在很长一段时间后收到消息。

我该如何按时收到邮件。

1 个答案:

答案 0 :(得分:0)

想到夫妻解决方案:

  1. 您是否尝试将delay_while_idle标志设置为false?
  2. 您可以通过广播以下意图强制Android本身发送心跳。

    com.google.android.intent.action.MCS_HEARTBEAT com.google.android.intent.action.GTALK_HEARTBEAT

  3. 希望这适合你。