我正在开发一个调用应用程序,我们正在使用 pushkit 通知问题是我没有在调试模式下使用开发配置文件接收通知。我在 Apple 帐户的 App Identifier 上安装了证书并推送通知证书。
而它在发布模式下工作。在服务器端,我们使用 APNs
我正在开发一个调用应用程序,我们正在使用 pushkit 通知问题是我没有在调试模式下使用开发配置文件接收通知。我在 Apple 帐户的 App Identifier 上安装了证书并推送通知证书。
而它在发布模式下工作。在服务器端,我们使用 APNs
您需要development
在您的entitlements.plist
.
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>aps-environment</key>
<string>development</string>
</dict>
</plist>
您还需要确保您的 APNS 设置使用了 useSandbox
而不是Production
. 我不记得这也适用的具体设置,但很容易发现。
还有一件事要检查:PushKit 令牌不等于设备的推送通知令牌。确保在发送 VOIP 通知时输入的是 PushKit 令牌,而不是经典的推送通知令牌。您的 VOIP 令牌可以通过IPKPushRegistryDelegate
在您的AppDelegate.cs
在 APNS 服务器端代码中进行一些小的更正修复了该问题
request.Headers.Add("apns-id", Guid.NewGuid().ToString("D"));
request.Headers.Add("apns-push-type", "voip");
希望这会帮助其他面临这个问题的人