2011-06-03 148 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