推送通知传递到苹果apns服务器,但设备收到什么

开发环境:

iOS 9.3.2(iPh6ne 6+)…但它适用于iOS 8.x

Phonegap 6.2.7

Phonegap-plugin-push v1.7.2

PHP7(服务器端) – contentpush – ref

我的情况:

  1. 令牌自动传递到我的服务器

  2. 消息已成功发送到ssl://gateway.push.apple.com 2195

  3. 设备甚至没有收到警报(“”)

    push.on('notification',function(data){console.log(data.message); alert(“”); alert(data.title +“Message:”+ data.message);});

苹果公司不保证成功发送邮件。 你可以在这里看到相关的答案

如果在连接到networking时没有看到Apple推送通知,请与您的networkingpipe理员联系以确保可以访问相关的TCP端口。

要使用Apple推送通知服务(APN),您的Mac和iOS客户端需要与Apple服务器的直接持续连接。

iOS设备首先尝试使用蜂窝数据连接到APN。 如果设备无法通过蜂窝连接连接到Apple服务器,则会尝试使用Wi-Fi进行连接。

如果您在防火墙后面使用Wi-Fi或使用专用接入点名称(APN)作为蜂窝数据,则需要直接与这些端口上的APN服务器进行非代理连接:

TCP port 5223: For communicating with Apple Push Notification services (APNs) TCP port 2195: For sending notifications to APNs TCP port 2196: For the APNs feedback service TCP port 443: For a fallback on Wi-Fi only, when devices can't reach APNs on port 5223 

APNs服务器使用负载平衡,所以您的设备不会总是连接到相同的公共IP地址的通知。 最好允许访问分配给Apple的整个17.0.0.0/8地址块上的这些端口。

APN代表Apple推送通知服务。 APN代表接入点名称,蜂窝数据networking和互联网之间的网关。

检查此链接相同的解释

并检查如何解决iOS上推送通知的问题?

Thx全部。 我现在发现了这个问题。 我想分享我开发apns应用程序的经验。

服务器端

确保

  1. 正确创build您的pem文件(生产)

  2. 正确input你的通行证

  3. 在您的应用上传到App Store之前,url应该是ssl://gateway.sandbox.push.apple.com。 (这是我的问题)

应用端

  1. 确保在Xcode中已经打开了推送通知button和后台通知

  2. 在Xcode7中启用位代码应该是“否”。