Android“hello world”pushnotification示例

我是新的android应用程序开发,我正在学习一点点。 我在从我的web服务器(PHP)发送推送通知(云消息)到android应用程序(只是一个“helloworld”)的艰巨任务。 我做了一些“search”,很less有人怀疑

  1. Google正在使用我们的“设备ID”发送通知吗?
  2. 在我们的应用程序中是否需要任何代码,除了在清单中添加一些权限来接收通知?
  3. 我们必须注册用户的设备ID到“本地数据库”才能发送通知我吗?

请帮助我加上任何一个请给我看一个代码示例或文档从PHP服务器发送一个简单的通知?

提前致谢

http://developer.android.com/google/gcm/index.html

我对C2DM了解不多。 使用GCM,实现和configuration非常简单。

gcm概述:您可以通过android手机向Google服务器发送请求。 您收到一个注册ID作为回应。 然后,您必须将此注册ID发送到您希望将通知发送到移动设备的服务器。 使用这个注册ID,你可以发送通知给设备。

回答:

  1. 要发送通知,请将数据(消息)和设备的注册ID发送到https://android.googleapis.com/gcm/send 。 (在PHP中使用curl)。
  2. 要接收通知和注册等,这就是你所要求的。
  3. 您必须将注册ID存储在设备上以及服务器上。 如果您使用GCM.jar,注册ID将存储在首选项中。 如果你愿意,你也可以将它保存在本地数据库中。

2016年更新:

GCM正在被FCM取代

  • 关于更换的常见问题
  • 文档

2015年更新:

看看developers.android.com – Google用GCM Demo Implementation / How 取代 C2DM

2014年更新:

1)您需要检查服务器从Google服务器获得的HTTP响应。 确保它是一个200 OK响应,所以你知道这个消息已经发送。 如果你得到另一个响应(302等),那么消息没有被成功发送。

2)您还需要检查您使用的注册ID是否正确。 如果您提供了错误的注册ID(作为消息的目的地 – 在特定设备上指定应用程序),则Google服务器无法成功发送。

3)您还需要检查您的应用是否已成功注册Google服务器,以接收推送通知。 如果注册失败,您将不会收到消息。

2014年第一个答复

这是一个很好的问题,你可能应该看看它: 如何在我自己的Android应用程序中添加推送通知

这里还有一个很好的博客,其中包含一个非常简单的方法: http : //blog.serverdensity.com/android-push-notifications-tutorial/

你可以按照这个教程

http://www.androidbegin.com/tutorial/android-google-cloud-messaging-gcm-tutorial/

它帮助我做推送通知; 或者你可以按照这个教程

http://www.tutorialeshtml5.com/2013/10/tutorial-simple-de-gcm-traves-de-php.html

但它是西class牙语,但你可以下载代码。