2

PassbookAPIを使用してプッシュ通知を送信しようとしています。APNSサーバーに送信する次のJSONオブジェクトを作成しました。

$payload = json_encode(array('aps' => array('alert' => 'Hello World!')));

ただし、このメッセージは届きません。通帳を使ってこれを行う方法をインターネットで探していましたが、見つかりません。このような空のペイロードを送信すると、次のようになります。

$payload = json_encode(new ArrayObject());

(更新)通知が到着し、パスが更新されます。

では、カスタムメッセージをAPNSサーバーに送信する方法を知っている人はいますか?

前もって感謝します!

4

1 に答える 1

8

Passbookは、プッシュ通知のペイロードを特に無視します。意図的に無視するため、プッシュ通知を見逃しても変更を見逃すことはありません。

Passbookは、通知をシグナルとして使用して、プッシュ通知が署名されている証明書に含まれているPassIdentifierでパスを更新するように通知します。

通知を受信すると(ペイロードに関係なく)、DeviceIDとシリアル番号に関連付けられたパスのGETリクエストをwebserviceURLに送信するだけです。また、以前に更新を要求した場合は、クエリパラメータpasssUpdatedSinceを追加します。更新を要求するのがこれが初めての場合、クエリパラメータは存在しません。

したがって、要約すると、独自のアプリと通信している従来のプッシュ通知とは対照的に、実際には、カスタムJSONペイロードをPassbookパススループッシュ通知に送信することは想定されていません。

于 2012-10-12T14:45:42.433 に答える