我正在尝试使用Passbook API发送一些推送通知。我创建了以下发送给APNS服务器的JSON对象:
$payload = json_encode(array('aps' => array('alert' => 'Hello World!')));
但是,此消息未到达。我一直在互联网上搜索使用Passbook时如何做到这一点,但我找不到它。当我发送这样的空载荷时:
$payload = json_encode(new ArrayObject());
(更新)通知到达并且通过更新。
那么,有没有人知道我应该如何向APNS服务器发送自定义消息?
提前致谢!
答案 0 :(得分:8)
Passbook专门忽略了推送通知的有效负载。它故意忽略它,因此如果错过推送通知则不会错过更改。
Passbook简单地将通知用作信号,告诉它使用推送通知所签署的证书中包含的PassIdentifier来更新通行证。
一旦收到通知(同样,无论有效负载如何),它只会向webserviceURL发送一个GET请求,以获取与DeviceID和serialNumber相关的传递。如果以前请求更新,它还会添加一个查询参数passUpdatedSince。如果这是第一次请求更新,则查询参数将不存在。
因此,总而言之,您实际上不应该通过推送通知向Passbook传递发送自定义JSON有效负载,这与您正在与自己的应用进行通信的经典推送通知相反。