2011-06-03 127 views
0

我可以在服務器上成功運行APNS。我收到此消息:APNS PHP推送通知問題

Fri, 03 Jun 2011 10:01:41 +0200 
ApnsPHP[29402]: INFO: Trying ssl://gateway.sandbox.push.apple.com:2195... Fri, 03 Jun 2011 10:01:42 +0200 
ApnsPHP[29402]: INFO: Connected to ssl://gateway.sandbox.push.apple.com:2195. Fri, 03 Jun 2011 10:01:42 +0200 
ApnsPHP[29402]: INFO: Sending messages queue, run #1: 1 message(s) left in queue. Fri, 03 Jun 2011 10:01:42 +0200 
ApnsPHP[29402]: STATUS: Sending message ID 1 [custom identifier: Message-Badge-3] (1/3): 167 bytes. Fri, 03 Jun 2011 10:01:43 +0200 
ApnsPHP[29402]: INFO: Disconnected. 

但是當我在設備上運行應用程序時,我不會收到推送通知。我編寫了所有的代碼,並且還創建了entitlement.plist文件。

任何人都可以幫助我嗎?也沒有調試錯誤。

任何幫助,非常感謝。

謝謝

Anks

+0

很難知道這個小信息。這可能是一個無效的有效負載(消息,設備令牌,長度...),或者您正在使用無效證書,甚至是在您的應用程序中執行錯誤。發送推送時不需要運行應用程序,因爲它不會顯示任何內容,但是既然你這樣做了,請檢查是否調用了didReceiveRemoteNotification。 – Yorxxx 2011-06-03 08:16:06

+0

didReceiveRemoteNotification沒有被調用。如果證書本身是無效的,我不認爲服務器會顯示成功消息。 – Anks 2011-06-03 08:49:23

回答

0

這聽起來我你錯過,或者你有一個無效的應用程序令牌爲您的設備。

+0

你能解釋一下,我該如何檢查它是否有效? – Anks 2011-06-03 08:51:16

+0

你可以在iPhone上打印出app-token-id嗎? 必須將相同的app-token-id發送到服務器(或者服務器必須知道你的app-token-id),然後它會將有效載荷(以及app-token-id)推送到APNS網關。 每個需要註冊PUSH的應用程序都會至少調用一次該函數「didRegisterForRemoteNotificationsWithDeviceToken」。有關更多信息,請參閱:http://www.macoscoders.com/2009/05/17/iphone-apple-push-notification-service-apns/ – 2011-06-03 08:55:50

+0

好的,我的設備正在顯示它的設備ID。我已將相同的ID複製到我的PHP腳本中。現在我正在運行已經有我的設備ID的PHP腳本。所以它應該將該消息發送給APNS,並且APNS應該將該消息發送給我的設備。 FRom無論我在服務器上收到什麼消息,都像是發送消息給APNS,但是我的設備沒有收到它。當我嘗試調試它不調用didRegister ...函數也...任何想法? – Anks 2011-06-03 10:15:27