Android Firebase云消息:权限=阻止时是否可以发送数据消息?
我正在尝试使用Firebase Cloud messaging(FCM)在多平台web和移动应用程序中实现一个消息子系统。FCM允许您以两种格式发送消息:通知和数据 通知由平台显示,例如,在web平台上的一个小弹出窗口中,或添加到移动电话上的通知列表中 数据消息由应用程序处理 在应用程序可以接收消息之前,您必须向用户请求发送/接收通知的权限Android Firebase云消息:权限=阻止时是否可以发送数据消息?,android,ios,firebase,permissions,firebase-cloud-messaging,Android,Ios,Firebase,Permissions,Firebase Cloud Messaging,我正在尝试使用Firebase Cloud messaging(FCM)在多平台web和移动应用程序中实现一个消息子系统。FCM允许您以两种格式发送消息:通知和数据 通知由平台显示,例如,在web平台上的一个小弹出窗口中,或添加到移动电话上的通知列表中 数据消息由应用程序处理 在应用程序可以接收消息之前,您必须向用户请求发送/接收通知的权限 现在,当用户阻止通知时,数据消息似乎也被阻止了。是我遗漏了什么,还是这是故意的 在iOS环境中,仅在通知中心显示推送通知时才需要权限 UIApplicati
现在,当用户阻止通知时,数据消息似乎也被阻止了。是我遗漏了什么,还是这是故意的 在iOS环境中,仅在通知中心显示推送通知时才需要权限
UIApplication.shared.registerforremotentifications()
将允许您检索设备令牌,但不会显示权限警报。此时,您可以接收推送通知,但除非在didReceiveMemotentification
中打印出来,或者在Firebase数据消息的情况下,didReceiveRemoteMessage
中打印出来,否则您将看不到推送通知
为了在应用程序之外显示通知,您需要调用
UIApplication.shared.registerNotificationSettings(settings)
,它将显示权限警报。我认为这是出于设计,因此应该是预期的。有权限授予用户权力/控制设备中发生的事情。如果被阻止的应用程序仍然能够发送通知,这看起来不太好,这会让权限变得毫无用处,如果真是这样的话。是的,谢谢你的评论。我想这是有意义的。我认为FCM是一种更通用的消息传递基础设施,可以选择连接到目标平台的通知api。显然,这不是一种选择,而是其中不可分割的一部分。您同意吗?FCM主要是一种简单的推送通知服务。是的,这是一个不可分割的部分。