尝试从PHP发送推送通知时出现MismatchSenderID错误

时间:2016-08-05 15:32:10

标签: php android ios cordova google-cloud-messaging

我正在尝试在我的Cordova应用程序中实现推送通知,并且已经关注了一些教程 我正在使用这段代码将通知发送到应用程序,但由于某种原因我收到了MismatchSenderID错误。 我多次检查并重新生成访问密钥,GCM ID是我从应用程序获得的,因此它应该可以工作 为什么会这样?

var GotAlLDetails = ViewData["GetAllDetails"];

    if(GotAllDetails != null)
    {
    // do work
    }

- 编辑:更多信息

我已经尝试了下面链接的线程中给出的解决方案,但它们似乎没有用,或者我做错了,因为从那时起Google控制台的url格式和布局发生了变化:http://imgur.com/a/yosLF 我确实尝试重新安装phonegap来获取不同的注册ID并尝试了这两个ID,包括URL中的ID和下面的ID。我可以通过终端成功发送推送通知,因此注册ID必须正确。

1 个答案:

答案 0 :(得分:0)

根据此blog,如果发件人ID和API_KEY不匹配,您将收到 MismatchSenderID错误

如上所述here,请在Google API控制台中查看项目的网址:https://code.google.com/apis/console/#project:xxxxxxxxxxx其中xxxxxxxxx是项目ID,即发件人ID。确保API密钥属于“服务器应用程序密钥(具有IP锁定)”。

在同一设备中使用不同的密钥记录时,也会发生

MismatchSenderId 。尝试卸载应用并再次运行它。然后更新注册密钥,然后在终端中运行下面的CURL脚本。

curl -X POST \
-H "Authorization: key=  write here api_key" \
-H "Content-Type: application/json" \
-d '{ 
"registration_ids": [ 
"write here reg_id generated by gcm"
], 
"data": { 
"message": "Manual push notification from Rajkumar"
},
"priority": "high"
}' \
https://android.googleapis.com/gcm/send
     

如果成功或失败,它将发出消息。

检查这些相关的主题:

希望这有帮助!