gpt4 book ai didi

node.js - 独立 WatchOS6 应用程序的 APNS 失败

转载 作者:搜寻专家 更新时间:2023-11-01 06:50:06 25 4
gpt4 key购买 nike

在设置一个新的独立 WatchOS6 应用程序(现在支持推送通知)后,让设备请求用户推送通知并捕获推送 token 。我无法让我的服务器发送推送通知。

在我的 NodeJS 服务器上设置了所有正确的凭据和 P8 后,我尝试将消息推送到设备...这一直是错误:

Status 400 - DeviceTokenNotForTopic - 根据 Apple 的文档,这意味着主题(应用程序的 BundleId)是错误的。但在本例中并非如此。

尝试了 2 个不同的 NPM 包(用于消除)

https://www.npmjs.com/package/node-pushnotifications

https://www.npmjs.com/package/apn

两者都为我提供了相同的问题。

有没有人成功地使用 APN 完成了独立的 WatchOS 应用程序?我错过了什么

————

更新

为了测试 Node 服务,还进行了 2 项测试:

  1. 创建了一个新的应用程序,这次是 iOS,使用相同的 Bundle Identifier,使用 pushToken 并发送消息服务成功

  2. 创建了一个新的应用程序,另一个 watchOS,具有不同的 Bundle Identifier,这再次被拒绝,但 APNs 是针对相同的 DeviceTokenNotForTopic 问题。

要测试生产,目前唯一的方法是提交到商店以供 App Store 审核。 TestFlight 选项当前不适用于 Watch,并且无法手动安装生产专用 .ipa。一旦它进入商店,我将继续进行进一步的测试。

最佳答案

问题已经解决

Xcode 有几个问题,如果您依赖 Xcode 在开发人员门户中整理您的证书,请不要这样做。

我一直在与支持部门联系,在与日志来回交流几天后,我了解到:

  1. Apple 的 Independent WatchOS 应用程序文档没有任何地方声明 topic (这是 bundle id)应该以 .watchkitapp
  2. 结尾
  3. Xcode 不允许您将推送通知功能添加到 .watchkitapp,这意味着它永远不会在您的开发者门户中创建 AppId。

我的解决方案是手动转到开发人员门户并添加 .watchkitapp AppId 并创建证书,从而允许我在服务器上的 p8 证书允许推送到那个特定的应用程序。

关于node.js - 独立 WatchOS6 应用程序的 APNS 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58094221/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com