Php Firebase通知不匹配SenderId
Phonegap、Android(以及更高版本的IOS)。Firebase推送通知。该文件位于服务器中。我不知道怎么修。已经搜索了几个小时,但尚未修复此问题。 我尝试过创建多个新项目console.firebase.google.com,但似乎没有任何效果。 错误:Php Firebase通知不匹配SenderId,php,firebase,firebase-cloud-messaging,Php,Firebase,Firebase Cloud Messaging,Phonegap、Android(以及更高版本的IOS)。Firebase推送通知。该文件位于服务器中。我不知道怎么修。已经搜索了几个小时,但尚未修复此问题。 我尝试过创建多个新项目console.firebase.google.com,但似乎没有任何效果。 错误: {“多播id”:4891894711706729720,“成功”:0,“失败”:1,“规范id”:0,“结果”:[{“错误”:“不匹配的共享”}]} 如果您正在向与发件人(比如发件人1)关联的令牌发送消息,但使用与其他发件人(即发件
{“多播id”:4891894711706729720,“成功”:0,“失败”:1,“规范id”:0,“结果”:[{“错误”:“不匹配的共享”}]}
如果您正在向与发件人(比如发件人1)关联的令牌发送消息,但使用与其他发件人(即发件人2)关联的服务器密钥,则通常会收到不匹配SenderId
错误。确保您正在使用相应的令牌和密钥。Firebase站点,登录,单击gear->settings,在该页面中,您的密钥正确吗?SenderID类似于135148119184,关键是一堆字符。我发送到的设备通过phonegap应用程序(js)插入数据库,然后这个php获取设备密钥。我哪里错了?
{"multicast_id":4891894711706729720,"success":0,"failure":1,"canonical_ids":0,"results":[{"error":"MismatchSenderId"}]}
<?php
define('SERVER_KEY', '(actualkeyIinserted');
$registrationIds = "";
(connected here, deleted line so I dont show info)
/* check connection */
if ($mysqli->connect_errno) {
$result = "Connect failed: " . $mysqli->connect_error;
}
$sql = "SELECT * FROM tb_devices ORDER BY id DESC LIMIT 1";
$result = $mysqli->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["device"] . "<br>";
$registrationIds = $row["device"];
}
} else {
echo "0 results";
}
$mysqli->close();
if($registrationIds != ""){
$msg = array
(
'body' => 'Prato em encomenda',
'title' => 'Alerta',
'icon' => 'myicon',/*Default Icon*/
'sound' => 'mySound'/*Default sound*/
);
$fields = array
(
'to' => $registrationIds,
'notification' => $msg
);
$headers = array
(
'Authorization: key=' . SERVER_KEY,
'Content-Type: application/json'
);
#Send Reponse To FireBase Server
$ch = curl_init();
curl_setopt( $ch,CURLOPT_URL, 'https://fcm.googleapis.com/fcm/send' );
curl_setopt( $ch,CURLOPT_POST, true );
curl_setopt( $ch,CURLOPT_HTTPHEADER, $headers );
curl_setopt( $ch,CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch,CURLOPT_SSL_VERIFYPEER, false );
curl_setopt( $ch,CURLOPT_POSTFIELDS, json_encode( $fields ) );
$result = curl_exec($ch );
curl_close( $ch );
#Echo Result Of FireBase Server
echo $result;
}else{
echo("No registration ID");
}
?>