我可以在没有通知权限的情况下使用 FCM 接收消息吗?
Posted
技术标签:
【中文标题】我可以在没有通知权限的情况下使用 FCM 接收消息吗?【英文标题】:Can i receive messages with FCM without notification permission? 【发布时间】:2019-09-05 13:42:51 【问题描述】:我想知道我是否可以在我的 ios 应用中接收来自 FCM 的负载,即使用户不允许我的应用通知。我不想将它们显示为通知,我只想处理它们的有效负载。
后台消息是否在未经许可的情况下工作?
前台消息是否在未经许可的情况下工作?
【问题讨论】:
【参考方案1】:Firebase Cloud Messaging APNs 接口使用 Apple 推送通知服务 (APNs) 向您的 iOS 应用发送最大 4KB 的消息,包括在后台时。
通知权限需要后台和前台工作(即使您的推送通知是无声的,即不需要显示通知)
【讨论】:
在 iOS、macOS 和 Web 上,在您的设备上接收 FCM 有效负载之前,您必须先征得用户的许可。 android 应用程序不需要请求权限。 firebase.flutter.dev/docs/messaging/usage/… 只需添加官方文档,尽管它是 Flutter 文档的 FCM,但在底层它们对于原生 iOS 也是相同的。在 Android 上,即使我在手机设置中禁用了通知,FCM 侦听器仍会被调用,只是不会在通知托盘中显示它【参考方案2】:您仍然需要用户允许通知,稍后您可以将处理实现为静默与否,由您决定。
为了接收您需要的有效负载,它必须来自推送通知。
【讨论】:
你的答案令人困惑,你能解释一下你的答案吗?这是否意味着 FCM 仅使用需要用户许可的推送通知发送数据?以上是关于我可以在没有通知权限的情况下使用 FCM 接收消息吗?的主要内容,如果未能解决你的问题,请参考以下文章