Skip to content

リッチプッシュ通知

Braze SDKのリッチプッシュ通知の設定方法を学習。

前提条件

この機能を使う前に、Swift Braze SDKを統合する必要がある。 プッシュ通知の設定も必要です。

リッチプッシュ通知の設定

ステップ 1: サービス拡張の作成

通知サービス拡張を作成するには、Xcode で File > New > Target に移動し、Notification Service Extension を選択します。

リッチプッシュ用の Notification Service Extension を作成する Xcode のターゲットピッカー。

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

ステップ 2: 通知サービス拡張機能のセットアップ

通知サービス拡張機能は、アプリにバンドルされる独自のバイナリです。Apple Developer Portal で独自のアプリ ID とプロビジョニングプロファイルを設定する必要があります。

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

ステップ 3: アプリグループの追加

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

メインアプリと通知サービス拡張が共有データにアクセスできるようにするには、共有アプリグループが必要です。アプリをアプリグループに追加しない場合、アプリはプッシュペイロードから特定のフィールドを読み込めず、期待通りに完全に動作しない可能性があります。

ステップ 4: リッチプッシュ通知の統合

BrazeNotificationService を使用したリッチプッシュ通知の統合に関するステップバイステップガイドについては、チュートリアルを参照してください。

サンプルを確認するには、サンプルアプリの NotificationService の使用法を参照してください。

アプリへのリッチプッシュフレームワークの追加

Swift Package Managerの統合ガイドに従って、以下を実行して BrazeNotificationServiceNotification Service Extension に追加します。

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

    プラスアイコンは Xcode のフレームワークとライブラリの下にあります。

  2. 「BrazeNotificationService」フレームワークを選択します。

    開いたモーダルで「BrazeNotificationService」フレームワークを選択できます。

以下を 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 'YourNotificationServiceExtensionTarget' do
  pod 'BrazeNotificationService'
end

# Only include the below if you want to also integrate Push Stories
target 'YourNotificationContentExtensionTarget' do
  pod 'BrazePushStory'
end

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

BrazeNotificationService.xcframeworkNotification Service Extension に追加するには、手動統合を参照してください。

BrazeNotificationService.xcframework が通知サービス拡張に追加された Xcode プロジェクト。

独自の UNNotificationServiceExtension の使用

独自の UNNotificationServiceExtension を使用する必要がある場合は、didReceive メソッドで brazeHandle を呼び出すことができます。

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

class NotificationService: UNNotificationServiceExtension {

  override func didReceive(
    _ request: UNNotificationRequest,
    withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void
  ) {
    if brazeHandle(request: request, contentHandler: contentHandler) {
      return
    }

    // Custom handling here

    contentHandler(request.content)
  }
}

ステップ 5: 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)

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

マーケティングチームはダッシュボードからリッチプッシュ通知を作成することもできます。プッシュコンポーザーでプッシュ通知を作成し、画像やGIFを添付するか、画像・GIF・動画をホストしているURLを提供します。アセットはプッシュ通知の受信時にダウンロードされるため、コンテンツをホスティングしている場合は、リクエストが大規模に同期的に急増することを想定する必要があります。

前提条件

この機能を使う前に、Cordova Braze SDKを統合する必要がある。 プッシュ通知の設定も必要だ。

リッチプッシュ通知の設定

ステップ 1: 通知サービス拡張機能を作成する

Xcode プロジェクトで、通知サービス拡張機能を作成します。完全なウォークスルーについては、「iOS リッチプッシュ通知チュートリアル」を参照してください。

ステップ 2:新しいターゲットを追加する

Podfile を開き、先ほど作成した通知サービス拡張機能のターゲットに BrazeNotificationService を追加します。BrazeNotificationService がすでにターゲットに追加されている場合は、続行する前に削除してください。シンボルの重複エラーを防ぐため、静的リンクを使用します。

1
2
3
4
target 'NOTIFICATION_SERVICE_EXTENSION' do
  use_frameworks! :linkage => :static
  pod 'BrazeNotificationService'
end

NOTIFICATION_SERVICE_EXTENSION を通知サービス拡張機能の名前で置き換えます。Podfile は次のようになります。

target 'MyAppRichNotificationService' do
  use_frameworks! :linkage => :static
  pod 'BrazeNotificationService'
end

ステップ 3:CocoaPods の依存関係を再インストールする

ターミナルで、プロジェクトの iOS ディレクトリに移動し、CocoaPod の依存関係を再インストールします。

cd PATH_TO_PROJECT/platform/ios
pod install

前提条件

この機能を使う前に、React Native Braze SDKを統合する必要がある。 プッシュ通知の設定も必要だ。

Expoを使ってリッチプッシュ通知をイネーブルメントする

React Native SDKでは、リッチプッシュ通知はAndroid向けにデフォルトで利用可能だ

Expo を使用して iOS でリッチプッシュ通知を有効にするには、app.jsonexpo.plugins オブジェクトで enableBrazeIosRichPush プロパティを true に構成します。

1
2
3
4
5
6
7
8
9
10
11
12
13
{
  "expo": {
    "plugins": [
      [
        "@braze/expo-plugin",
        {
          ...
          "enableBrazeIosRichPush": true
        }
      ]
    ]
  }
}

最後に、このアプリ拡張機能のバンドル識別子を、プロジェクトの認証情報設定に追加します:<your-app-bundle-id>.BrazeExpoRichPush.このプロセスの詳細については、Expo Application Services でアプリ拡張機能を使用するを参照してください。

New Stuff!