我正在使用 Android SDK 中给出的 Google Cloud Messaging 示例代码。客户端和服务器代码都可以正常工作。我已经在三个 android 设备中安装了 GCM 客户端 android 应用程序,并且当服务器运行时,每个设备都成功注册到 GCM 服务器。每当我尝试发送消息时,服务器都会将消息广播到所有三个设备。但我的问题是我们是否可以将任何设备列入黑名单或允许服务器向任何特定设备发送消息。
有没有什么方法可以使用服务器中为每个设备生成的registrationID来限制设备?
这是发送推送通知的服务器代码
if (devices.size() == 1) {
String registrationId = devices.get(0);
if(!(registrationId .equalsIgnoreCase("APA91bE61KYmI4Qzn9NKkh6wkHr1ya8FIfGbc_gYJf0_33558IeFnj9j8j4EPRaJeSKJ_CK6_a9FQLt_CapLE4e_mvRaq3hytJalfjTBbkAxbLIdfdXyoxatSrDPmtxSdyaeiRV-Bav-4qOSlURH5mL69Fa9ktX8JFoow")))
{
Message message = new Message.Builder().build();
Result result = sender.send(message, registrationId, 5);
results = Arrays.asList(result);
}
} else {
// send a multicast message using JSON
Message message = new Message.Builder().build();
MulticastResult result = sender.send(message, devices, 5);
results = result.getResults();
}