推送通知发送到apple apns服务器但设备什么都没收到

zip*_*f.S 4 ios phonegap-plugins apns-php

开发环境:

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);});

Nit*_*esh 10

Apple不对成功传递消息提供任何保证.你可以在这里看到相关的答案

如果在连接到网络时没有看到Apple推送通知,请与网络管理员联系,确保可以访问相关的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
Run Code Online (Sandbox Code Playgroud)

APN服务器使用负载平衡,因此您的设备不会始终连接到相同的公共IP地址以进行通知.最好允许访问分配给Apple的整个17.0.0.0/8地址块上的这些端口.

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

检查此链接是否有相同的解释

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


zip*_*f.S 5

谢谢所有。我现在发现了问题所在。我想分享我在开发 apns 应用程序方面的经验。

服务器端

确保

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

  2. 正确输入您的密码

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

应用端

  1. 确保您在 Xcode 中打开了推送通知按钮和后台通知

  2. 在 Xcode7 中启用位码应为“否”。