使用Passbook API发送推送通知

Dev*_*s50 2 php json payload apple-push-notifications passbook

我正在尝试使用Passbook API发送一些推送通知.我创建了以下发送给APNS服务器的JSON对象:

$payload = json_encode(array('aps' => array('alert' => 'Hello World!')));
Run Code Online (Sandbox Code Playgroud)

但是,此消息未到达.我一直在互联网上搜索使用Passbook时如何做到这一点,但我找不到它.当我发送这样的空载荷时:

$payload = json_encode(new ArrayObject());
Run Code Online (Sandbox Code Playgroud)

(更新)通知到达并且通过更新.

那么,有谁知道我应该如何向APNS服务器发送自定义消息?

提前致谢!

小智 8

Passbook特别忽略了推送通知的有效负载.它故意忽略它,因此如果错过推送通知则不会错过更改.

Passbook将通知简单地用作信号,告诉它使用推送通知所签署的证书中包含的PassIdentifier来更新通行证.

一旦它收到通知(同样,无论有效负载如何),它只是向webserviceURL发送一个GET请求,以获取与DeviceID和serialNumber相关的传递.如果以前请求更新,它还会添加一个查询参数passUpdatedSince.如果这是第一次请求更新,则查询参数将不存在.

因此,总而言之,您实际上不应该通过推送通知向Passbook传递自定义JSON有效负载,这与您与自己的应用程序通信的经典推送通知形成对比.