我使用https://github.com/arnesson/cordova-plugin-firebase/来接收基于离子的应用上的Google Firebase消息。谷歌Firebase iOS推送在控制台中工作,但不在API中
设置证书后,安装插件并设置Firebase帐户我可以接收通过Firebase控制台发送的通知(在Android和iOS设备上)。
但是,当我通过Firebase API发送(https://firebase.google.com/docs/cloud-messaging/http-server-ref)时,只有android设备收到通知。我使用下面的代码:
$data = Array
(
[to] => <token>
[notification] => Array
(
[title] => My Title
[text] => Notification test
[sound] => default
[vibrate] => 1
[badge] => 0
)
)
$jsonData = json_encode($data);
$ch = curl_init("https://fcm.googleapis.com/fcm/send");
$header = array(
'Content-Type: application/json',
"Authorization: key=".$gcmApiKey
);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch,CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonData);
$result = curl_exec($ch);
curl_close($ch);
echo $result;
返回任何错误:
{"multicast_id":904572753471539870406,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"0:1477063422322568734%3d5c78243d5c7824"}]}
什么可能是错误的?
检查您向其发送的令牌应该是正确的设备ID – siddhesh
该令牌是正确的。当我使用相同的令牌通过Firebase Console发送消息时,通知会到达。 –