Skip to content

プッシュ通知ストーリー

プッシュストーリーでは、マーケターが写真の回転機能を使用してプッシュ通知内の一連のページを作成できます。これらのページは、画像、クリックアクション、タイトル、説明文で構成されている。

iOSアプリにプッシュストーリーズを設定するには、標準的なプッシュ通知を統合する以外にも、この記事で説明する追加のステップが必要だ。

前提条件

プッシュストーリーを受信するには、以下のSDKバージョンが必要である:

プッシュ通知統合のチュートリアルに従って、アプリでプッシュを有効にしていることを確認する。このタスクの一環として、この機能に必要な UNNotification フレームワークを実装しておく必要があります。

ステップ1:通知コンテンツ拡張ターゲットを追加する{#notification-content-extension}

アプリ・プロジェクトで、メニュー「ファイル」>「新規作成」>「ターゲット」と進み、新しいNotification Content Extension ・ターゲットを追加してアクティブにする。

Xcode によって新しいターゲットが生成され、次のようなファイルが自動的に作成されるはずです。

  • NotificationViewController.swift
  • MainInterface.storyboard

ステップ2:機能を有効にする

Xcode で、[署名 & 機能] ペインを使ってメインアプリのターゲットにバックグラウンドモード機能を追加します。バックグラウンドフェッチリモート通知の両方のチェックボックスを選択します。

アプリグループの追加

さらに、Xcode の [署名 & 機能] ペインから、アプリグループ機能をメインアプリターゲットと通知コンテンツ拡張ターゲットに追加します。次に、ボタンをクリックする。アプリのバンドル ID を使用してアプリグループを作成します。たとえば、アプリのバンドル ID が com.company.appname の場合、アプリグループに group.com.company.appname.xyz という名前を付けることができます。

アプリをアプリグループに追加しないと、アプリがプッシュペイロードからの特定のフィールドの入力に失敗し、期待したとおりに完全に動作しない可能性があります。

ステップ3:アプリにPush Storyフレームワークを追加する

Swift Package Manager の統合ガイドに従って、BrazePushStoryNotification Content Extension に追加します。

Xcodeのフレームワークとライブラリの下にある「+」アイコンを選択して、フレームワークを追加する。

次の行を Podfile に追加します。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
target 'YourAppTarget' do
pod 'BrazeKit'
pod 'BrazeUI'
pod 'BrazeLocation'
end

target 'YourNotificationContentExtensionTarget' do
pod 'BrazePushStory'
end

# Only include the below if you want to also integrate Rich Push
target 'YourNotificationServiceExtensionTarget' do
pod 'BrazeNotificationService'
end

Podfile を更新したら、ターミナル内で Xcode アプリプロジェクトのディレクトリーに移動し、pod install を実行します。

GitHub リリースページから最新の BrazePushStory.zip をダウンロードして展開し、BrazePushStory.xcframework をプロジェクトの Notification Content Extension に追加します。

ステップ4: 通知ビューコントローラーを更新する{#enable-capabilities}

NotificationViewController.swift に以下の行を追加し、ヘッダーファイルをインポートする:

1
import BrazePushStory

次に、BrazePushStory.NotificationViewController を継承してデフォルトの実装を置き換えます。

1
class NotificationViewController: BrazePushStory.NotificationViewController {}

プッシュストーリーイベントのカスタム処理

独自のカスタムロジックを実装してプッシュストーリー通知イベントを処理する場合は、上記のように BrazePushStory.NotificationViewController を継承し、以下のように didReceive メソッドをオーバーライドします。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import BrazePushStory
import UserNotifications
import UserNotificationsUI

class NotificationViewController: BrazePushStory.NotificationViewController {
  override func didReceive(_ notification: UNNotification) {
    super.didReceive(notification)
    
    // Custom handling logic
  }
  
  override func didReceive(_ response: UNNotificationResponse, completionHandler completion: @escaping (UNNotificationContentExtensionResponseOption) -> Void) {
    super.didReceive(response, completionHandler: completion)
    
    // Custom handling logic
  }
}

ステップ5:通知コンテンツ拡張 plist を設定する{#notification-content-extension}

Notification Content ExtensionInfo.plist ファイルを開き、NSExtension \ NSExtensionAttributes の下に以下のキーを追加・変更する:

キー タイプ
UNNotificationExtensionCategory string ab_cat_push_story_v2
UNNotificationExtensionDefaultContentHidden ブール値 YES
UNNotificationExtensionInitialContentSizeRatio 数値 0.6
UNNotificationExtensionUserInteractionEnabled ブール値 YES

あなたのInfo.plist ファイルは、以下の画像と一致するはずだ:

ステップ 6: メインアプリでの Braze 統合の更新{#update-braze}

Brazeを初期化する前に、アプリグループの名前をBraze設定の push.appGroupプロパティに割り当てる。

1
2
3
4
let configuration = Braze.Configuration(apiKey: "<YOUR-BRAZE-API-KEY>",
                                        endpoint: "<YOUR-BRAZE-ENDPOINT>")
configuration.push.appGroup = "REPLACE_WITH_APPGROUP"
let braze = Braze(configuration: configuration)
「このページはどの程度役に立ちましたか?」
New Stuff!