问题标签 [android-c2dm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2815 浏览

android - Android C2DM 得到 NotRegistered 响应

感谢您阅读我的帖子:

我让 C2DM 在我的应用程序中完美运行。为了测试不同的场景,我取消了我的手机注册,使其不再接收推送,然后我重新注册了我的手机。由于我重新注册了推送不起作用。

以下是我正在经历的步骤:

  1. 我的手机收到一个没有错误的registration_id
  2. 我在收到 ID 后的几分钟内使用我的 registration_id 向 Google 发帖
  3. 我收到 Error=NotRegistered 的响应

在这个过程中,我没有在 LogCat 中看到任何奇怪的东西。我很茫然,非常感谢任何帮助。

谢谢你,马特

0 投票
3 回答
2937 浏览

android - Android C2DM Registration_ID 最大大小

用于 Android C2DM 服务的 registration_id 字段的最大可能大小是多少?

0 投票
2 回答
568 浏览

android - 频繁的c2dm消息请求

我开发了一个 android 应用程序,允许用户根据 chrometophone 示例从他们的手机请求信息。一切运行良好,但我注意到 c2dm 消息只发送一次到设备,并且子序列 c2dm 只会在屏幕解锁后到达手机。

这让我很恼火,因为我的应用需要从手机获取数据而无需多次解锁屏幕。任何人都可以在这方面提供帮助吗?

感谢并为我糟糕的英语感到抱歉。

0 投票
2 回答
930 浏览

android - 如何在不使用静态变量中的硬编码值的情况下为 Android C2DM 初始化发件人 ID?

我正在将 Android C2DM 添加到 Android 库项目中。我从JumpNoteChrome To Phone中包含的com.google.android.c2dm 包开始。为了使用这个包,您必须继承 C2DMBaseReceiver服务,该服务将 Sender Id 作为其构造函数的参数。在 JumpNote 中,此参数是使用配置类中的硬编码静态变量初始化的。但是,在一个可能由多个同时运行的应用程序使用的 Android 库项目中,我认为我不能使用硬编码的静态变量(也就是说,我相信当/如果多个应用程序试图访问/修改静态变量)。

我试图想办法在不使用静态变量的情况下初始化发件人 ID,但到目前为止我感到很困惑。

显而易见的解决方案是使用清单或资源字符串或两者的组合。例如,在 strings.xml 中,我可能有一个“ac2dmSender”字符串,它在 C2DMReceiver 服务声明的元数据子项中访问在清单中。但是,您似乎无法从静态上下文中获取对 PackageManager 或 ResourceManager 的引用,因此我无法以将元数据传递给 C2DMBaseReceiver 的构造函数的方式检索元数据。

请让我知道我错过了一些东西!提前致谢。

0 投票
2 回答
15379 浏览

android - 任何在 Android 上做 C2DM 的人

我需要在我的应用程序中实现 c2dm。有没有人也在这样做?请帮助..一些教程将非常有帮助,或者如果您已经完成了 c2dm 实现,那么教程将不胜感激。

请帮忙。

0 投票
1 回答
821 浏览

android - android 2.2 设备上的 google 帐户同步

我正在为 Android 应用程序中的推送通知实现 C2DM,它需要至少一个登录 Google 帐户。我创建了一个 Google g 邮件帐户并在设备上登录,但我无法同步它。

请帮我。

提前致谢。

0 投票
2 回答
1022 浏览

android - API 级别较低的 C2DM?

要使 C2DM 工作,设备显然必须处于 API 级别 8。但是,这真的需要在该级别编译应用程序吗?与 C2DM 一起使用的代码都不需要任何级别 8 的 API。那么是否有可能拥有一个较低级别的应用程序,可能是 API 级别 4 或 6,并让它尝试进行 C2DM 注册?可能在 API 级别较低的设备上注册失败,希望可以检测到这种情况,以便可以使用替代机制。但是,对于 API 级别 8 或更高级别的设备,注册不应该成功吗?我在这里尝试做的是利用 C2DM,同时仍然在第 4 级编译,这样我的应用程序就可以接触到最多的用户。理想情况下,这是可能的,我可以检测到设备何时不支持 C2DM,并做出相应的反应。

0 投票
1 回答
767 浏览

android - 如何通过代码判断安卓操作系统

可能重复:
如何检索 android sdk 版本?

我正在开发一个需要提供通知的 Android 应用程序。对于 2.2 之前的操作系统,我将使用轮询,但对于新操作系统,我想使用新的 C2DM 方法。有没有办法通过代码检测应用程序安装在哪个操作系统上?还是有更好的方法来解决这个问题?

0 投票
1 回答
373 浏览

android - Android C2DM 消息到达手机,转发到错误的应用程序

我一直在搞乱 C2DM 并且有一个不错的小应用程序在模拟器中完美运行。我从我的应用服务器向 Google 的 C2DM 服务器发送一条消息,该消息将到达模拟器,我的应用程序将作出适当的响应。

我现在的问题是在我的智能手机(Nexus One)上运行该应用程序。该应用程序运行良好,并向 Google 注册了 C2DM,然后将其 rego ID 转发到我的应用程序服务器。这一切都按预期工作。问题是,当我从我的应用服务器向手机发送消息时,我的应用永远不会收到消息。经过一番调查,我发现消息到达了手机,但 C2DM 子系统似乎将消息转发到 Google Talk 应用程序而不是我的应用程序。

有没有人见过这种行为?任何人都可以提供有关寻找什么来解决这个问题的提示吗?我假设如果注册消息转发到我的应用程序,那么其他所有内容也应该如此。

谢谢,

杰米

0 投票
5 回答
23382 浏览

php - C2DM实现PHP代码

我正在创建使用 C2DM 推送通知的 Android 应用程序。但我在创建 php 代码以使用 c2dm 发送消息时遇到问题。请指导我如何使用 php 代码发送消息。实际上有一个关于如何获取客户端身份验证令牌的问题。我已经看到了http://code.google.com/android/c2dm/index.html#server url,但是根据这个我已经创建了 android 应用程序,我也得到了注册 ID,我也发送给了用户,但是如何服务器使用它来发送应用程序。

android设备的服务器是否需要任何东西来发送消息?