【问题标题】:Android "hello world" pushnotification example [closed]Android“hello world”推送通知示例 [关闭]
【发布时间】:2013-04-29 11:30:07
【问题描述】:

我是 android 应用程序开发的新手,我正在学习一点点。我正在执行一项艰巨的任务,将推送通知(云消息传递)从我的 Web 服务器(PHP)发送到 android 应用程序(只是一个“helloworld”)。我做了一些“谷歌搜索”,我的怀疑很少

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

请帮帮我 另外,谁能给我看一个代码示例或文档,以便从 PHP 服务器发送一个简单的通知?

提前致谢

【问题讨论】:

标签: android push-notification android-c2dm


【解决方案1】:

gcm 概述: 你从你的安卓手机向谷歌服务器发送一个请求。您会收到一个注册 ID 作为响应。然后,您必须将此注册 ID 发送到您希望将通知发送到移动设备的服务器。然后,您可以使用此注册 ID 向设备发送通知。

答案:

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

【讨论】:

    【解决方案2】:

    Firebase:https://firebase.google.com/docs/cloud-messaging/

    GCM(已弃用):http://developer.android.com/google/gcm/index.html

    我对 C2DM 了解不多。使用 GCM,很容易实现和配置。

    【讨论】:

    • 有没有Demo可以实现?
    【解决方案3】:

    2016 年更新:

    GCM 正在被 FCM 取代

    2015 年更新:

    看看developers.android.com - Google replaced C2DM 与 GCM Demo Implementation / How To

    2014 年更新:

    1) 您需要在服务器上检查您从 Google 服务器获得的 HTTP 响应。确保它是 200 OK 响应,以便您知道消息已发送。如果您收到另一个响应(302 等),则消息未成功发送。

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

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

    2014 年第一次回答

    这是一个很好的问题,您可能应该看看它:How to add a push notification in my own android app

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

    【讨论】:

    【解决方案4】:

    您可以按照本教程进行操作

    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

    但它是西班牙语,但您可以下载代码。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多