2012-06-28 8 views

答えて

42

はい。プッシュ通知プログラミングガイドセクションThe Notification Payload

プロバイダーは、Apple予約済みのAPネームスペースの外でカスタムペイロード値を指定できます。カスタム値には、JSONの構造化プリミティブ型(辞書(オブジェクト)、配列、文​​字列、数値、ブール値)を使用する必要があります。カスタムペイロードデータとして顧客情報を含めるべきではありません。代わりに、コンテキスト(ユーザーインターフェイス用)または内部メトリックの設定などの目的に使用します。たとえば、カスタムペイロード値は、インスタントメッセージクライアントアプリケーションが使用する対話識別子、またはプロバイダが通知を送信した時刻を識別するタイムスタンプです。アラートメッセージに関連付けられたアクションは、デバイス上のデータの削除など、破壊的であってはなりません。

だからあなたのペイロードは、さらに下、同じページ上の

{ 
    "aps": { 
     "alert": "joetheman", 
     "sound": "default" 
    }, 
    "message": "Some custom message for your app", 
    "id": 1234 
} 

のようになります。このことを示す例の数です。

+0

私はクラブ内の "message"と "id"を辞書の中に入れて送ることができます。私はそのシナリオでいくつかの奇妙な問題に直面しています。 – kidsid49

+0

リンクはMacのドキュメントを参照していることに注意してください。https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.htmlのiOSドキュメント(必ずしも異なるものではありません)があります。 – thomers

+0

ペイロードはどのように編集できますか? – Haring10

6

もちろんです。リンゴプッシュ通知付きのペイロードとしてカスタムパラメータを送信できます。ケヴィン・バラードのように、ペイロードは上記のようになります。しかし、いつもあなたがプッシュ通知を扱っていることを覚えておいてください。リンゴの制約に従ってプッシュ通知は、通知ペイロードに許される最大サイズは256バイトです。 Apple Push Notification Serviceはこれを超える通知を拒否します。通知にデータを追加するときは、これを考慮してください。

+6

http/2で新しいapnsを使用する場合、新しい制限は2048 – Enigma

+2

です。制限は4096バイトに増加します。 https://developer.apple.com/news/?id=12172015b – infiniteloop

+1

新しい制限は4Kbです(iOS 10) – preetam

3

カスタムタグをapsタグ内に配置することはできません。ここではそれについて言っているドキュメンテーションです:

Providers can specify custom payload values outside the Apple-reserved aps namespace. Custom values must use the JSON structured and primitive types: dictionary (object), array, string, number, and Boolean. 

だからあなたのような何かをする必要があり、あなたのケースで:したがって、あなたはそれを探してカスタムペイロードを読み取ることができ

{ 
    "aps": { 
     "alert": "Hello Push", 
     "sound": "default" 
    }, 
    "People": { 
     "Address": "Your address here", 
     "Name": "Your Name here", 
     "Number": "XXXXXXXXXX" 
    } 
} 

のキーはではなく、メインJSONにあります"aps":

関連する問題