Php EasyAppns已发送消息,但未在iOS设备上接收到

Php EasyAppns已发送消息,但未在iOS设备上接收到,php,ios,push-notification,Php,Ios,Push Notification,我正在使用as PHP服务器脚本向iOS设备发送推送通知 它在使用Apple development Push Notifications证书进行开发时工作得非常好,但当切换到分发时,它会将消息设置为已发送,但从未在从App Store下载的iOS设备上收到过 我已经测试了Apple分发推送通知证书以及我从应用商店下载的应用程序,使用该证书,效果非常好!所以问题不是来自我的分发证书,也不是来自我的应用程序,而是在EasyApps脚本和设置中的某个地方,但我不知道它在哪里,也不知道如何修复它 检查

我正在使用as PHP服务器脚本向iOS设备发送推送通知

它在使用Apple development Push Notifications证书进行开发时工作得非常好,但当切换到分发时,它会将消息设置为已发送,但从未在从App Store下载的iOS设备上收到过


我已经测试了Apple分发推送通知证书以及我从应用商店下载的应用程序,使用该证书,效果非常好!所以问题不是来自我的分发证书,也不是来自我的应用程序,而是在EasyApps脚本和设置中的某个地方,但我不知道它在哪里,也不知道如何修复它

检查您是否使用了正确的服务器

在使用该脚本的测试中,开发是否设置为false?或true,具体取决于您使用的示例。检查这两种情况是否导致正确使用生产服务器


$development=true;//布尔值

我找到了血腥的原因:

由于使用了长消息,apns_messages.message列中的有效负载未作为完整的有效负载格式插入,因此消息字段的内容如下所示:

{"aps":{"alert":"\u064a\u0627 \u0639\u0644\u064a \u0623\u0646\u062a \u0627\u0644\u0648\u0644\u064a \u064a\u0627 \u0639\u0644\u064a \u0623\u0646\u062a \u0627\u0644\u0648\u0644\u064a \u064a\u0627 \u0639\u0644\u064a \u0623\u0646\u062a \u0627\u0644\u0648\u064
{"aps":{"alert":"\u064a\u0648\u062c\u062f \u0625\u0639\u0644\u0627\u0646 \u062c\u062f\u064a\u062f \u0645\u0646 \u062e\u062f\u0645\u0629 \u0628\u0644\u063a\u0646\u064a","badge":5,"sound":"alarm.caf"},"module":"messages","id":"28"}
因此,我所做的更改是确保使用非常短的消息来确保EasyAppns在apns_messages.message列中插入完整的有效负载消息格式,因此该字段的内容如下所示:

{"aps":{"alert":"\u064a\u0627 \u0639\u0644\u064a \u0623\u0646\u062a \u0627\u0644\u0648\u0644\u064a \u064a\u0627 \u0639\u0644\u064a \u0623\u0646\u062a \u0627\u0644\u0648\u0644\u064a \u064a\u0627 \u0639\u0644\u064a \u0623\u0646\u062a \u0627\u0644\u0648\u064
{"aps":{"alert":"\u064a\u0648\u062c\u062f \u0625\u0639\u0644\u0627\u0646 \u062c\u062f\u064a\u062f \u0645\u0646 \u062e\u062f\u0645\u0629 \u0628\u0644\u063a\u0646\u064a","badge":5,"sound":"alarm.caf"},"module":"messages","id":"28"}

您是否使用了临时分发资源调配配置文件和生产APNS证书?还可以尝试APNSHPP,它比这个小脚本更高级。