首页 > 解决方案 > React 本机 FCM 推送通知在 IOS Adhoc 和 TestFlight 中不起作用

问题描述

尝试使用谷歌云消息在反应本机应用程序中实现推送通知。该通知在模拟器和生产环境中的 android 设备上完美运行。但是对于 IOS,它只有在设备中运行时才能在本地工作。在临时或试飞中,它不起作用。我正在使用 APN 密钥。有人遇到同样的问题吗?我可以在堆栈溢出中看到很多关于推送通知不适用于 ios 的帖子,但没有一篇帖子对我有帮助。这是我到目前为止所做的:

  1. 在 developer.apple.com 中生成了一个 APN 身份验证密钥
  2. 将该密钥添加到 firebase.console.google.com 中的 ios App
  3. 使用 xcode 在设备中运行应用程序 - (推送通知每次都可以正常工作。)
  4. 在 xcode 中存档应用程序并分发到 AdHoc 并在设备中安装 .ipa 文件。(推送通知不起作用)
  5. 分发到 testflight 并测试推送通知 -不起作用

为什么它会在调试模式下工作,而不是在 adhoc 或 testflight 下工作。我检查了这个:https ://stackoverflow.com/a/48111671/8729976 。它说生产和开发环境都有一个身份验证令牌,所以我猜它绝对不是关键。以下是示例响应:

  1. 当推送通知被传递时,我们会收到带有此消息的状态 200:projects/myproject-name/messages/1602538922793273
  2. 当推送通知未传递时,我们仍然会收到带有此消息的状态 200:projects/myproject-name/messages/0:1602541135340865%6b2d5f5c6b2d5f5c

不知道第二条消息是什么意思。

标签: firebase-cloud-messagingapple-push-notificationsreact-native-ios

解决方案


推荐阅读