【发布时间】:2012-12-16 03:41:49
【问题描述】:
向 GCM 服务器发送消息(使用 Java)时出现异常:
[ errorCode=MismatchSenderId ]
在这里我检查了我的 apikey 和 senderid。两者都在同一个项目中。请帮助解决此问题。
我正在使用 windows 系统并使用 java 编程来向 GoogleCloudMessaging 发送消息。根据 GCM 的文档,我正在发送 regid(将由 andridd 设备发送)和 apikey 以及一些文本消息。这里 regid 和 apikey 使用相同的谷歌帐户。使用此详细信息,我将消息发送到 GCM 服务器。它说:mismatchsenderid...请指导我..
public static void main(String[] args) {
Sender sender = new Sender("AIzaSyBXXXXXX");
Message message = new Message.Builder()
.collapseKey("1")
.timeToLive(3)
.delayWhileIdle(true)
.addData("message", "this").build();
Result result;
try {
result = sender.send(message,"APA91bFYa3SNWhUOywguYHN1XXXXXXX", 1);
System.out.println(result.toString();
/* Message message1 = new Message.Builder() .build();*/
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
【问题讨论】:
-
如果您想在这里获得帮助,您需要更好地描述您的问题和环境,并且需要向我们展示您的代码。
-
抱歉,我无法在此处粘贴我的代码,因为我维护 4 到 5 个文件。但我可以描述问题。我使用 Windows 系统和使用 java 编程以向 GoogleCloudMessaging 发送消息。按照我正在发送 regid(将由 Android 设备发送)和 apikey 以及一些文本消息的 gcm 文档。此处 regid 和 apikey 使用相同的谷歌帐户。使用此详细信息我向 GCM 服务器发送消息,它说:mismatchsenderid ...请指导我..请检查下面的代码,它告诉我如何调用我的代码
-
public static void main(String[] args) { Sender sender = new Sender("AIzaSyBXXXXXX"); Message message = new Message.Builder() .collapseKey("1") .timeToLive(3) .delayWhileIdle(true) .addData("message", "this").build();结果结果;尝试 { 结果 = sender.send(message,"APA91bFYa3SNWhUOywguYHN1XXXXXXX", 1); System.out.println(result.toString(); /* Message message1 = new Message.Builder() .build();*/ } catch (Exception e) { // TODO 自动生成的 catch 块 e.printStackTrace() ; }}
-
我已将您的 cmets 添加到问题中。这样代码更容易阅读。
标签: java android push-notification google-cloud-messaging