プッシュ通知ストーリー
Braze SDK のプッシュストーリーを設定する方法について説明します。
前提条件
この機能を使う前に、Swift Braze SDKを統合する必要がある。 プッシュ通知の設定も必要です。これにはUNNotificationフレームワークの実装が含まれます。
Push Storiesを受信するには、以下の最小SDKバージョンが必要です。
Push Storiesの設定
ステップ 1: 通知コンテンツ拡張ターゲットを追加する
アプリプロジェクトで、メニューFile > New > Targetに移動し、新しいNotification Content Extensionターゲットを追加してアクティブにします。

Xcodeによって新しいターゲットが生成され、以下のファイルが自動的に作成されます。
NotificationViewController.swiftMainInterface.storyboard
ステップ 2: 機能を有効にする
Xcodeで、メインアプリターゲットのSigning & Capabilitiesパネルを使用してBackground Modes機能を追加します。Background fetchとRemote notificationsの両方のチェックボックスを選択します。

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

ここでいうApp Groupsとは、AppleのApp Groups Entitlementのことであり、Brazeのワークスペース(旧アプリグループ)IDのことではありません。
アプリをアプリグループに追加しないと、アプリがプッシュペイロードからの特定のフィールドの入力に失敗し、期待どおりに完全に動作しない可能性があります。
ステップ 3: アプリにPush Storyフレームワークを追加する
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に追加します。


Embed列の下で、BrazePushStory.xcframeworkに対してDo Not Embedが選択されていることを確認してください。
ステップ 4: 通知ビューコントローラーを更新する
NotificationViewController.swiftに以下の行を追加し、ヘッダーファイルをインポートします。
import BrazePushStory
次に、BrazePushStory.NotificationViewControllerを継承してデフォルトの実装を置き換えます。
class NotificationViewController: BrazePushStory.NotificationViewController {}
プッシュストーリーイベントのカスタム処理
独自のカスタムロジックを実装してプッシュストーリー通知イベントを処理する場合は、上記のようにBrazePushStory.NotificationViewControllerを継承し、以下のようにdidReceiveメソッドをオーバーライドします。
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のInfo.plistファイルを開き、NSExtension \ NSExtensionAttributesの下に以下のキーを追加・変更します。
| キー | タイプ | 値 |
|---|---|---|
UNNotificationExtensionCategory |
文字列 | ab_cat_push_story_v2 |
UNNotificationExtensionDefaultContentHidden |
ブール値 | YES |
UNNotificationExtensionInitialContentSizeRatio |
数値 | 0.6 |
UNNotificationExtensionUserInteractionEnabled |
ブール値 | YES |
さらに、同じInfo.plistファイルに以下の最上位Brazeディクショナリを追加します。REPLACE_WITH_APPGROUPをステップ 2で作成したアプリグループに置き換えてください。
| キー | タイプ | 値 |
|---|---|---|
Braze.AppGroup |
文字列 | REPLACE_WITH_APPGROUP |
Info.plistファイルは以下の画像と一致するはずです。

ステップ 6: メインアプリでのBraze統合を更新する
Brazeを初期化する前に、アプリグループの名前をBraze設定のpush.appGroupプロパティに割り当てます。
let configuration = Braze.Configuration(apiKey: "<YOUR-BRAZE-API-KEY>",
endpoint: "<YOUR-BRAZE-ENDPOINT>")
configuration.push.appGroup = "REPLACE_WITH_APPGROUP"
let braze = Braze(configuration: configuration)
前提条件
この機能を使う前に、Cordova Braze SDKを統合する必要がある。 プッシュ通知の設定も必要だ。
プッシュストーリーの設定
ステップ 1: 通知コンテンツ拡張機能を作成する
Xcode プロジェクトで、通知コンテンツ拡張機能を作成します。完全なウォークスルーについては、「iOS プッシュ通知ストーリーのチュートリアル」を参照してください。
ステップ 2:プッシュ通知アプリグループを構成する
プロジェクトの config.xml ファイルで、先ほど作成したプッシュ通知アプリグループを構成します。
1
<preference name="com.braze.ios_push_app_group" value="NOTIFICATION_CONTENT_EXTENTION" />
PUSH_APP_GROUP をプッシュ通知アプリグループの名前で置き換えます。config.xml は次のようになります。
<preference name="com.braze.ios_push_app_group" value="MyPushAppGroup" />
ステップ 3:新しいターゲットを追加する
Podfile を開き、先に作成した通知コンテンツ拡張機能のターゲットに BrazePushStory を追加します。シンボルの重複エラーを防ぐため、静的リンクを使用します。
target 'NOTIFICATION_CONTENT_EXTENSION' do
use_frameworks! :linkage => :static
pod 'BrazePushStory'
end
NOTIFICATION_CONTENT_EXTENSION を通知コンテンツ拡張機能の名前で置き換えます。Podfile は次のようになります。
target 'MyAppNotificationContentExtension' do
use_frameworks! :linkage => :static
pod 'BrazePushStory'
end
ステップ 4:CocoaPods の依存関係を再インストールする
ターミナルで、iOS ディレクトリに移動し、CocoaPod の依存関係を再インストールします。
cd PATH_TO_PROJECT/platform/ios
pod install
前提条件
この機能を使う前に、React Native Braze SDKを統合する必要がある。 プッシュ通知の設定も必要だ。
プッシュストーリーを有効にする
React Native SDKでは、Android向けにプッシュ通知機能がデフォルトで利用可能だ。
Expoを使ってiOSでプッシュストーリーズを有効にするには、アプリケーションにアプリグループが定義されていることを確認する。詳細については、アプリグループの追加を参照してください。
次に、enableBrazeIosPushStories プロパティを true に構成し、app.json の expo.plugins オブジェクトの iosPushStoryAppGroup にアプリグループ ID を割り当てます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
"expo": {
"plugins": [
[
"@braze/expo-plugin",
{
...
"enableBrazeIosPushStories": true,
"iosPushStoryAppGroup": "group.com.company.myApp.PushStories"
}
]
]
}
}
最後に、このアプリ拡張機能のバンドル識別子を、プロジェクトの認証情報設定に追加します:<your-app-bundle-id>.BrazeExpoPushStories.このプロセスの詳細については、Expo Application Services でアプリ拡張機能を使用するを参照してください。

Expo Application Services で Push Stories を使用する場合は、eas build を実行する際に、必ず EXPO_NO_CAPABILITY_SYNC=1 フラグを使用してください。コマンドラインに既知の問題があり、拡張機能のプロビジョニングプロファイルからApp Groups機能が削除される。

