Skip to content


iOS 10リッチプッシュ通知

iOS 10では、画像、GIF、およびビデオでプッシュ通知を送信する機能が導入されています。この機能を有効にするには、クライアントはService Extension を作成する必要があります。これは、プッシュペイロードが表示される前に変更できる新しいタイプの拡張機能です。

サービス拡張の作成

Notification Service Extension を作成するには、Xcode で [ファイル] > [新規] > [ターゲット] に移動し、[通知サービス拡張] を選択します。

アプリケーションに拡張機能を埋め込むように [アプリケーションに埋め込む] が設定されていることを確認します。

サービス拡張の設定

Notification Service Extension は、アプリにバンドルされている独自のバイナリです。これは、Apple Developer Portalに独自のアプリIDとプロビジョニングプロファイルで設定する必要があります。

Notification Service Extension のバンドル ID は、メインアプリターゲットのバンドル ID とは異なる必要があります。たとえば、アプリのバンドル ID が com.company.appname の場合、サービス拡張に com.company.appname.AppNameServiceExtension を使用できます。

Braze で動作するようにサービス拡張を設定する

Braze は、リッチコンテンツの設定、ダウンロード、および表示に使用する ab キーの下にある APNs ペイロードの添付ペイロードを送信します。以下に例を示します。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
  "ab" :
    {
    ...

    "att" :
      {
       "url" : "http://mysite.com/myimage.jpg",
       "type" : "jpg"
       }
    },
  "aps" :
    {
    ...
    }
}

関連するペイロード値は次のとおりです。

1
2
3
4
5
6
7
8
9
10
11
// The Braze dictionary key
static NSString *const AppboyAPNSDictionaryKey = @"ab";

// The attachment dictionary
static NSString *const AppboyAPNSDictionaryAttachmentKey = @"att";

// The attachment URL
static NSString *const AppboyAPNSDictionaryAttachmentURLKey = @"url";

// The type of the attachment - a suffix for the file you save
static NSString *const AppboyAPNSDictionaryAttachmentTypeKey = @"type";

Braze ペイロードで手動でプッシュ通知を表示するには、AppboyAPNSDictionaryAttachmentURLKey の下の値からコンテンツをダウンロードし、AppboyAPNSDictionaryAttachmentTypeKey キーの下に格納されているファイルタイプのファイルとして保存し、通知添付ファイルに追加します。

サンプルコード

サービス拡張は、Objective-C または Swift で記述できます。

Objective-C サンプルコードを使用するには、Notification Service Extension ターゲットの自動生成された NotificationService.m の内容をAppboy の NotificationService.m の内容に置き換えます。

Swift サンプルコードを使用するには、Notification Service Extension ターゲットの自動生成されたNotificationService.swift の内容を Appboy の NotificationService.swift の内容に置き換えます。

ダッシュボードでリッチプッシュ通知を作成する

Braze ダッシュボードでリッチプッシュ通知を作成するには、iOS プッシュを作成するか、イメージまたは GIF を添付するか、画像、GIF、または動画をホストするURL を指定します。アセットはプッシュ通知の受信時にダウンロードされるため、コンテンツをホスティングしている場合は、要求が大規模に同期的に急増することを想定する必要があります。

サポートされているファイルタイプとサイズのリストについては、unnotificationattachmentを参照してください。

「このページはどの程度役に立ちましたか?」
New Stuff!