我正在尝试为我的Android应用程序实施GCM推送通知。我已在我的Android应用中通过引用this link实施了GCM客户端。在GCM客户端中,它有一个方法:
/**
* Sends the registration ID to your server over HTTP, so it can use GCM/HTTP or CCS to send
* messages to your app. Not needed for this demo since the device sends upstream messages
* to a server that echoes back the message using the 'from' address in the message.
*/
private void sendRegistrationIdToBackend()
{
// Your implementation here.
}
我试图找出注册ID可以存储在后端的方式。在搜索时我了解到Google App Engine可用于部署服务器端代码,方法是参考link 根据我的知识,每个Android应用程序实现对客户端的推送通知,他们将需要所有注册ID的列表。以下是我的一些问题
答案 0 :(得分:4)
获取安装了应用的设备的所有注册ID的唯一方法是维护服务器中这些设备的数据库。或者您可以使用第三方提供商(例如UrbanAirship)为您执行此操作。
GCM服务器具有所有这些ID,但没有API调用返回给定应用程序的所有已注册注册ID。
使用GCM的每个应用程序都需要服务器端维护已注册设备的列表,并向设备发送消息。您可以使用第三方推送提供商为您完成此操作。
如果要将更新发送到所有已注册的设备,则必须指定要向其发送消息的所有注册ID。如果所有设备都收到相同的消息,您可以在一个HTTP请求中将消息发送到1000个注册ID(如果您有超过1000个设备,则必须执行多个请求)。