我们正在开发一个Ionic应用程序Android和iOS有Push Notifications...我们通过Firebase Cloud Messaging
在……上面iOS我们遇到了这个问题(我们接受了应用程序的通知权限):
当应用程序在foreground,我们立即收到通知(我们在应用程序中获得通知,而不是使用卡片)。 当应用程序关闭或在background似乎我们没有收到通知。无论我们打开或恢复应用程序,我们都会收到通知,因为它是在foreground...我们的假设是silent notifications. (当我们发送Firebase测试通知时,我们会得到相同的行为)。 我们有下一个配置:
Xcode:功能->后台模式->远程通知(显示一次检查) Xcode:Capability->Push通知(显示两个检查) AppleDeveloper:标识符->我的应用程序->推送通知(带有dev和prod的证书) Apple Developer:Key->.p8键,带有“ApplePush通知服务(APN)” Firebase:我的应用程序->配置->云消息传递(.p8文件上传了密钥和团队ID) 这是我们尝试通过Firebase POST API发送的几个通知之一,它结合了我们在研究这个问题时阅读的几乎所有内容。(我们还发送所需的Firebase HTTP报头)
{
"to": "<firebase_token>",
"notification": {
"body": "NOTIFICATION BODY",
"title": "NOTIFICATION TITLE",
},
"apns": {
"headers": {
"apns-push-type": "alert",
"apns-expiration": 0,
"apns-priority": 5,
"apns-topic": "<my_app>"
},
"payload": {
"alert": {
"title": "NOTIFICATION TITLE",
"body": "NOTIFICATION BODY"
},
"aps": {
"content-available": 1,
"alert": {
"title": "NOTIFICATION TITLE",
"body": "NOTIFICATION BODY"
}
},
"sound": "default",
"content-available": 1
}
},
"data": {
"field": "1",
"type": "CHAR"
}
}
尽管如此POST请求可能是不正确的杆菌通知,我们相信这不会是问题,因为Firebase测试通知也无法显示时,背景。
我不确定,但看来你的有效载荷结构不合适。
请参阅以下样品
{
"to" : "FCM TOKEN",
"notification" : {
"body" : "Body of Your Notification",
"title": "Title of Your Notification"
},
"data" : {
"body" : "Body of Your Notification in Data",
"title": "Title of Your Notification in Title",
"key_1" : "Value for key_1",
"key_2" : "Value for key_2"
}
}
如果您使用的是普通APN,那么就不需要通过content-available
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。