コンテンツにスキップ

リッチプッシュ通知

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: App Groupを追加する

Xcodeで、メインアプリターゲットおよびNotification Service ExtensionターゲットのSigning & CapabilitiesペインからApp Groups機能を追加します。次に、+ボタンをクリックします。アプリのバンドルIDを使用してアプリグループを作成します。たとえば、アプリのバンドルIDがcom.company.appnameの場合、アプリグループにgroup.com.company.appname.xyzという名前を付けることができます。

メインアプリとNotification Service Extensionが共有データにアクセスできるように、共有App Groupが必要です。アプリをアプリグループに追加しない場合、アプリはプッシュペイロードの特定のフィールドを入力できず、期待どおりに完全に動作しない可能性があります。

ステップ 4: リッチプッシュ通知を統合する

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

サンプルについては、ExamplesアプリのNotificationServiceでの使用例を参照してください。

リッチプッシュフレームワークをアプリに追加する

Swift Package Manager統合ガイドに従った後、以下の手順でNotification Service ExtensionにBrazeNotificationServiceを追加します:

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

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

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

    開いたモーダルで選択できるBrazeNotificationServiceフレームワーク。

Podfileに以下を追加します:

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.xcframeworkをNotification Service Extensionに追加するには、手動統合を参照してください。

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

独自のUNNotificationServiceExtensionを使用する

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

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でApp Groupを設定する

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)

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

マーケティングチームはダッシュボードからリッチ通知を作成することもできます。プッシュコンポーザーを使用してプッシュ通知を作成し、画像やGIFを添付するか、画像、GIF、または動画をホストするURLを提供します。アセットはプッシュ通知の受信時にダウンロードされるため、コンテンツをホストしている場合は、リクエストの大規模で同期的なスパイクに備えて計画してください。

前提条件

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

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

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

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

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

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

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.jsonのexpo.pluginsオブジェクトでenableBrazeIosRichPushプロパティをtrueに設定します:

{
  "expo": {
    "plugins": [
      [
        "@braze/expo-plugin",
        {
          ...
          "enableBrazeIosRichPush": true
        }
      ]
    ]
  }
}

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

New Stuff!