我已经通过Firebase Cloud Messaging集成了基于常规文本的推送通知。推送通过FCM服务器发送,并且工作正常。
但是我对基于媒体的推送通知(包括图像和基于媒体的通知)感到困惑。我还用以下提到的格式对邮递员控制台进行了测试:
使用服务api。
URL: https://fcm.googleapis.com/fcm/send
Method Type: POST
Headers:
Content-Type: application/json
Authorization: key=your api key
Body/Payload:
{ "notification": {
"title": "Your Title",
"text": "Your Text"
},
"data": {
"message": "Offer!",
"mediaUrl": "https://cdn.pixabay.com/photo/2018/01/21/01/46/architecture-3095716_960_720.jpg"
},
"to" : "to_id(firebase refreshedToken)"
}
因此,我只收到基于普通文本的推送。在iOS 10或更高版本的设备中发送丰富通知的错误或正确方法应该是什么?
谢谢。
答案 0 :(得分:0)
您应该在FCM有效负载中提供可变内容和可用内容。两者都是布尔值,并且必须在通知参数之外
{
"to" : "to_id(firebase refreshedToken),
"mutable_content": true,
"content-available": true,
"data": {
"message": "Offer!",
"mediaUrl": "https://cdn.pixabay.com/photo/2018/01/21/01/46/architecture-3095716_960_720.jpg
},
"notification": {
"title": "my title",
"subtitle": "my subtitle",
"body": "some body"
}
}
答案 1 :(得分:0)
正确的格式是这样(经过测试)
{
"to": "deviceFCMtoken",
"notification":{
"title" : "Check this Title",
"subtitle" : "Subtitle",
"body" : "Body",
"mutable_content" : true,
"category" : "categoryID"
},
"data":{
"image-url": "www.something.com"
}
}