Flutter Flatter、Firebase ios、云消息不';当应用程序在后台时不显示,仅当应用程序在前台时显示
我使用的是颤振依赖:Flutter Flatter、Firebase ios、云消息不';当应用程序在后台时不显示,仅当应用程序在前台时显示,flutter,firebase-cloud-messaging,Flutter,Firebase Cloud Messaging,我使用的是颤振依赖: firebase_messaging: ^7.0.3 flutter_local_notifications: ^3.0.1+6 我向firebase云发送如下消息: { "to": "/topics/demo_ios" "notification" : { "body" : "Hi there now now", "title" : "Wow
firebase_messaging: ^7.0.3
flutter_local_notifications: ^3.0.1+6
我向firebase云发送如下消息:
{
"to": "/topics/demo_ios"
"notification" : {
"body" : "Hi there now now",
"title" : "Wow!",
"sound": "default"
},
"priority": "high"
"data": {
"title": "Hi there yes",
"body": "Wow",
}
}
在ios中,当应用程序位于前台时,通知会显示,但在后台时,通知根本不会显示。我试着阅读和修改很多东西,但仍然不起作用。我从xcode设置了后台提取、远程通知和后台处理,但它仍然不起作用
我在plist文件中将FirebaseAppDelegateProxyEnabled设置为false,但没有帮助
我请求许可:
_messaging.requestNotificationPermissions(
const IosNotificationSettings(sound: true, badge: true, alert: true, provisional: false)
);
_messaging.onIosSettingsRegistered.listen((event) {print('2124: ios Setting registered');});
首先,我建议您将插件更新为
firebase\u消息:^8.0.0-dev.8
,因为这里启用了iOS后台处理。请参见此更改:
- iOS后台处理程序支持
APNSConfig
属性以发送通知
如果您通过FirebaseAdmin发送通知,请阅读
不要忘记,在这种情况下,您需要设置content\u available=True
,该属性包含在APNSConfig
属性中,因此基本上,如果您使用的是FirebaseAdmin,您还应该包括与此类似的属性:
apns=messaging.APNSConfig(
payload=messaging.APNSPayload(
aps=messaging.Aps(
alert='alert text',
sound='s',
content_available=True,
mutable_content=True,
category='c',
thread_id='t',
custom_data={
'id': 'xxx',
'type': 'xxx',
'title': 'Robb',
'content': 'Axxxx',
'image': 'xxx',
'deepLink': 'xxxx',
},
),
)
),
我也遇到了同样的问题,试着在testflight上上传IPA文件,然后它就工作了,希望如此。好吧,解决方案非常简单,代表我来说是个错误 如文档pub.dev所述: 按照Firebase文档中的本指南生成Apple接收推送通知所需的证书。您可以跳过标题为“创建配置文件”的部分 以下是链接:
我忘了执行这些步骤。执行此操作后,它起作用了欢迎使用颤振,颤振医生无助于解决颤振错误,只帮助安装颤振,您可以删除该部分无问题,已完成。您好,我正在通过http请求与邮递员发送通知,而不是firebase控制台。我是否需要使用内容\u available=true,还有apns?我没有看到任何关于这方面的内容。我相信我的文章的第一部分帮助你解决了最初的问题。关于你关于可用内容的问题的答案在这里详细解释了你应该何时使用它。