【问题标题】:broadcasting push notifications to android c2dm向 android c2dm 广播推送通知
【发布时间】:2024-09-28 17:50:01
【问题描述】:

如何使用我的应用程序向所有设备广播推送通知。我在 Urban airship 中看到过这个功能,它可以向所有具有该应用程序的设备发送广播消息。我需要使用自己的程序来发送广播。这个可以吗??如果是怎么办?我在谷歌上搜索过,但找不到令人满意的答案。任何与此相关的链接都会有所帮助。

谢谢

编辑

curl --header "Authorization: GoogleLogin auth=*my auth key here*" "https://android.apis.google.com/c2dm/send" -d registration_id=<registration id of the device> -d "data.payload=You have recieved a Push Notification" -d collapse_key=0 -k

我一直在使用它来发送通知,通知被传递到注册的设备,即模拟器。我需要向所有使用我的应用程序的设备发送通知。它是如何实现的?

【问题讨论】:

    标签: android android-c2dm urbanairship.com


    【解决方案1】:

    来自 google 的 C2dm 可以将推送消息发送到您在多个设备上运行的应用程序。为此,您必须使用 google c2dm 服务注册一个 gmail 帐户。您的设备也应该使用任何 google 帐户在 google 注册,并且应该安装市场

    http://code.google.com/android/c2dm/signup.html
    

    按照链接进行操作。文档很好。希望对您有所帮助

    http://blog.mediarain.com/2011/03/simple-google-android-c2dm-tutorial-push-notifications-for-android/
    http://www.vogella.de/articles/AndroidCloudToDeviceMessaging/article.html
    

    也看看上面的基础教程

    您的应用程序结构应该有点像在所有设备注册并循环通过这些 id 并发送消息时接受来自所有设备的注册 id

    【讨论】:

    • 我已经尝试过 vogella 的代码,服务器端实现是使用 java 并且消息是使用 curl 命令发送的。它仅将消息/通知发送到具有注册 ID 的设备。我将编辑我的帖子并添加 curl 命令行。
    • 注册 id 是您的设备首次向 c2dm 服务器发送注册意图时获得的。服务器端应用程序需要它来发送推送通知。
    • 所以我必须为服务器端编写自己的应用程序才能发送广播吗?
    • 确保您必须编写服务器端应用程序。查看更新后的答案
    • 谢谢你,你能告诉我在哪里可以找到关于我要求发送广播通知的服务器端编程。链接,教程任何材料都会有所帮助。再次感谢。