【问题标题】:APNS handle obtained by Expo in React Native is incorrectReact Native 中 Expo 获取的 APNS 句柄不正确
【发布时间】:2022-01-27 19:49:51
【问题描述】:

EXPO SDK 版本:42.0.01 为:iOS 开发

我们的目标:将测试通知从 Azure 通知中心的测试发送工具成功发送到已注册的物理 iPhone,该 iPhone 正在运行 EXPO 应用的本地实例。

进展:我们能够在不使用 3rd 方库的情况下成功地将物理 iPhone 注册到 Azure 通知中心。我们可以在 Hub 中看到该注册。

问题:在使用 Azure 的测试发送工具时,我们收到错误“注册的推送通知系统句柄无效”,并且测试通知未发送。

调试

  • 我们正在使用 EXPO 的 Notifications.getDevicePushTokenAsync() API 来获取推送令牌。
  • Azure 支持团队分析了日志并得出结论认为问题出在 PNS 句柄上,即注册通知的手机的 Apple ID。
  • 手机的 PNS 句柄始终保持不变。
  • 通过使用“expo credentials:manager”,我使用 KeyID、TeamID 和 .p8 证书添加了一个新的推送通知密钥 - 这样做后 PNS 句柄没有改变,通知也失败了。

我还没有找到任何工具来验证 APNS 句柄。我目前正在等待我们公司团队的 .p12 证书,以使用 https://pushtry.com/ 测试通知。

我们如何验证 APNS 句柄,如果发现它无效 - 我们如何循环它/请求另一个?

【问题讨论】:

    标签: react-native expo apple-push-notifications azure-notificationhub react-native-push-notification


    【解决方案1】:

    来自 APN 的 PNS 句柄不会经常更改,因为它与设备和应用安装相关联。有关更多详细信息,请参阅此答案Does the APNS device token ever change, once created?

    【讨论】:

    • 感谢马修的回复。这有助于理解一旦分配的设备推送令牌将在一段时间内保持不变。然而,验证推送令牌的问题仍然有些悬而未决。我能够使用 expo 通知服务成功地传递由我们的无服务器流生成的通知。我将对 expo 生成的令牌进行一些进一步的测试,以尝试找出我们流程中的确切错误。一旦令牌被排除,我们一直遇到的问题可能会回到通知中心。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-27
    • 2022-12-02
    • 1970-01-01
    • 2022-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多