2013-07-08 72 views
1

我使用EasyAPNS作爲PHP服務器腳本向iOS設備發送推送通知。EasyAPNS發送消息但未收到iOS設備

它的工作完美地開發使用蘋果發展推送通知證書,但是當切換到分佈它設置爲「交付」,但是從App Store中下載的iOS設備從來沒有收到消息!

我測試過蘋果Distribution推送通知證書和我的應用程序使用這個Script從App Store下載,它的工作完美!所以這個問題不是來自我的發行證書,也不是來自我的應用程序,它在EasyAPNS腳本和設置中的某處,但我不知道它在哪裏以及如何修復它!

+0

您是否使用Ad-Hoc Distribution Provisioning配置文件和生產APNS證書?也嘗試APNSPHP,它比這個小腳本更先進。 https://github.com/duccio/ApnsPHP – edwardmp

回答

0

檢查您是否使用了正確的服務器。

在使用該腳本進行測試時,開發是否設置爲false?或者取決於你使用哪個例子。檢查這些是否導致正確使用生產服務器。

$development = true; // boolean

0

我找到了血腥的原因:)

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 

所以我所做的改變是,以確保使用非常短消息確保EasyAPNS在apns_messages中插入完整的有效負載信息格式。 message列,所以該字段的內容如下所示:

{"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"} 
相關問題