Android应用程序在一段时间后停止接收c2dm消息

时间:2012-05-04 16:59:15

标签: android android-c2dm

我们一直在尝试开发一个使用Google的c2dm服务的Android应用程序。 当我们在清除所有数据后启动应用程序时,应用程序接收到c2dm消息就好了,但是在一段时间(可能是2分钟)之后,消息拒绝到达。

我们还检查了从服务器推送c2dm消息后收到的代码,代码成功(代码号200没有错误)。

在Stack Overflow上搜索相关帖子后,我们发现了这篇文章: Why do Android C2DM push messages not always arrive? 但我们确认每次申请开始时我们都不会注册到c2dm服务。

在我们的案例中似乎有什么问题?

我们使用android 2.2 API 8版本。

提前致谢, 标记

2 个答案:

答案 0 :(得分:2)

您应该始终牢记Google的C2DM允许每天的特定邮件限制。我想在2-3分钟内发送大量邮件(客户聊天或类似的东西)可能是你问题的根源。

此外,请记住,无法保证消息将会到达。根据Google的C2DM简介: C2DM不保证交付或消息顺序。但您可能已经知道这一点。

我在想,如果你的2-3分钟平均值是一个规则,那么可能是消息的限制可能是原因。尝试发送更少的消息,看看间隔是否不会变大。

答案 1 :(得分:0)

“也许2分钟” - 你应该首先确认一下。你必须澄清:

  • 这个问题与这个设备有关吗?
  • 是否一直发生?如果没有,是什么触发了它?
  • 它曾经发生过一次,还是每次都发生过?

请记住,C2DM消息无法保证。有些人不会到达。

另请注意,有时Android设备“脱落”c2dm并且在一段时间内不接收消息。您将在某些网络上看到类似的效果(例如,根据我的经验,某些C2DM消息不通过wifi网络传送,因此请尝试使用3G)。

相关问题