是否可以在不使用APN的情况下向FCM中的iOS设备发送数据消息?
我需要在 iOS 客户端应用程序运行时向其发送一些"实时"数据,而不是轮询我的服务器。
我希望 FCM不使用Apple 通知有两个原因:
- 我不希望在应用程序未运行时向用户显示任何类型的系统通知/徽章/警报。这是应用程序运行时的纯应用程序数据传输,其余消息可以忽略。
- 使用 Apple 通知时,系统将在首次询问用户是否要授予我的应用通知权限时询问用户。如果被拒绝,我的整个应用程序将停止工作,因为数据不会更新。
我在Firebase Google Groups上找到了这篇文章,其中一些Firebase的人暗示,如果我不使用iOS特定的键,如sound
,body
,badge
,content_available
或其他:
{
"to" : "<device_id>",
"data" : {
"customKey1" : "value1",
"customKey2" : "value2",
"customKey3" : "value3",
}
}
那么他们将不会使用 APN。
我所需要的只是在我的应用程序处于前台时保证交付,我想知道是否有办法配置 FCM 或消息本身以达到该目标。
只是对此的跟进。我发现使用这个库的 React Native https://rnfirebase.io/docs/v5.x.x/messaging/receiving-messages 我能够接收到 iOS 模拟器(不支持 APNS)的仅数据消息,所以看起来数据只能绕过 APNS。