0

我知道这样的问题一定被问了很多。

案例 - 我在 Distribution AdHoc 配置文件上对我的应用程序进行了代码设计。我已经在我的服务器上安装了我的生产推送 SSL 证书 p12 来推送消息。

消息正在从服务器成功推送,但未在设备上接收。

现在,在进一步挖掘之后,我读到沙盒和网关的设备令牌应该不同。如果 APNs 返回的设备令牌依赖于 aps-environment 字符串值,则有意义。所以,我确实从通知中注销了该应用程序。

[[UIApplication sharedApplication] unregisterFromRemoteNotifications];

使用上面提到的代码执行应用程序。然后删除代码并再次使用 APNs 注册应用程序。注册成功了,但是我收到的设备令牌没有改变,还是一样的。

我从服务器推送了一条消息。并检查了设备的控制台日志。(我确实使用 AdHoc 分发配置文件签署了应用程序并检查了控制台日志)。我在日志中收到以下内容:-

apsd[301] <APSCourier: 0x119f60>: Connecting courier stream using DNS TXT record at sandbox.push.apple.com and port TCP 5223

apsd[301] <Warning>: Fall back to alternate interface was disabled

apsd[301] <Warning>: Wake schedule completed for 2012-07-20 18:45:58 GMT (took 0.070 seconds)

apsd[301] <Warning>: Interface manager: Binding stream to WWAN context kCTDataConnectionServiceTypeInternet

apsd[301] <Warning>: <APSCourier: 0x119f60>: Connecting to courier 10-courier.sandbox.push.apple.com.

从服务器发送的所有消息都记录在设备的控制台中,但从未弹出。我猜操作系统会丢弃它们。

现在的问题,

  1. 为什么令牌没有改变?

  2. 为什么应用程序在 AdHoc Distribution 配置文件上构建时尝试调用 sandbox.push.apple.com 而它应该尝试调用 gateway.push.apple.com ?

  3. 当我使用 3G 连接时,为什么要使用端口 5223?

  4. 为什么不显示推送弹出窗口?

我没有想法,任何帮助表示赞赏。

4

1 回答 1

0

该应用程序在 24 小时后开始按预期运行。我猜有类似批处理的东西,用于使用 APNs 的相关服务器更新令牌。

于 2012-07-24T20:15:00.727 回答