Apple Push Notification Service:通过苹果服务器向app用户推送消息,无需启动app。 苹果官方文档:http://developer.apple.com/library/mac/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html#//apple_r
Apple Push Notification Service:通过苹果服务器向app用户推送消息,无需启动app。
苹果官方文档:http://developer.apple.com/library/mac/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html#//apple_ref/doc/uid/TP40008194-CH100-SW9
对于这种第三方库,PHP官方称之为PEAR,需要按照PEAR标准开发(标准URI)。
PEAR的优势:一键安装到php/lib/php目录,require即可使用,很方便。
PHP PEAR上有一个Services_Apns,github上有一个Services_APNS,但都无法使用,所以我开发了一个,安装步骤如下:
pear channel-discover sinkcup.github.io/<span>pear pear </span><span>install</span> sinkcup/Services_Apple_PushNotification
使用步骤:
1、登录苹果开发者后台,下载dev或prod证书,合并成pem文件。在ios app里添加push权限,获得device token。参考:http://www.cnblogs.com/gpwzw/archive/2012/03/31/Apple_Push_Notification_Services_Tutorial_Part_1-2.html
2、demo(参考)
<span>php require_once </span><span>'</span><span>Services/Apple/PushNotification.php</span><span>'</span><span>; $conf </span>=<span> array( </span><span>'</span><span>password</span><span>'</span> => <span>'</span><span>12346</span><span>'</span><span>, </span><span>'</span><span>cert</span><span>'</span> => <span>'</span><span>/home/u1/cert.pem-sandbox</span><span>'</span><span>, ); $o </span>= new Services_Apple_PushNotification(<span>'</span><span>sandbox</span><span>'</span><span>, $conf); $deviceToken </span>= <span>'</span><span>aaaf818eaae8a5aa11aaaf9aa8f8aa15aaefae75a1aaaa597e51917aa2a1a111</span><span>'</span><span>; $data </span>=<span> array( </span><span>'</span><span>aps</span><span>'</span> =><span> array( </span><span>'</span><span>alert</span><span>'</span> => <span>'</span><span>测试push sandbox</span><span>'</span><span>, </span><span>'</span><span>badge</span><span>'</span> => <span>2</span><span>, </span><span>'</span><span>sound</span><span>'</span> => <span>'</span><span>default</span><span>'</span><span>, ) ); $r </span>= $o-><span>send($deviceToken, $data); var_dump($r); exit; </span>?>
输出:
<span>bool</span>(<span>true</span>)
我的PEAR 频道:http://sinkcup.github.io/pear/
Services_Apple_PushNotification项目代码:https://github.com/sinkcup/Services_Apple_PushNotification