Engage StudioからMobile Pushキャンペーンを送信する前に、Firebase Cloud Messaging (FCM) を設定し、Treasure Dataと統合する必要があります。このガイドでは、AndroidとiOSの両プラットフォームの完全なセットアッププロセスを説明します。
- Firebaseプロジェクト: Cloud Messagingが有効なFirebaseプロジェクト
- Apple Developer Account: iOSプッシュ通知 (APNs) に必要
- Treasure Dataアカウント: 統合を設定するための適切な権限
Engage StudioのMobile Push通知は次のフローで動作します:
- キャンペーン作成: Engage Studioでターゲットオーディエンスとコンテンツを含むキャンペーンを作成
- 配信パイプライン: Engage StudioがデバイストークンとペイロードをFirebase Cloud Messagingに送信
- FCM/APNs: FirebaseがAndroid (FCM経由) とiOS (APNs経由) に通知を配信
- モバイルアプリ: アプリが通知を受信し、ユーザーアクションをトラッキング
- イベントトラッキング: アプリがイベントをTreasure Dataに送り返して分析
┌─────────────────┐
│ Engage Studio │
│ Campaign │
└────────┬────────┘
│
▼
┌─────────────────┐
│ Firebase │
│ Cloud │
│ Messaging │
└────────┬────────┘
│
┌────┴────┐
│ │
▼ ▼
┌────────┐ ┌────────┐
│ FCM │ │ APNs │
│Android │ │ iOS │
└───┬────┘ └───┬────┘
│ │
▼ ▼
┌──────────────────┐
│ Mobile App │
│ (Customer-built) │
└────────┬─────────┘
│
▼
┌─────────────────┐
│ Treasure Data │
│ (Event Logs) │
└─────────────────┘- Firebase Consoleにアクセス
- プロジェクトを追加をクリックするか、既存のプロジェクトを選択
- ウィザードに従ってプロジェクト作成を完了
- Firebase ConsoleでAndroidアイコンをクリック
- Androidパッケージ名を入力 (例:
com.example.myapp)- これは
build.gradleファイルのapplicationIdと一致する必要があります
- これは
- オプションでアプリのニックネームとSHA-1証明書を入力
- アプリを登録をクリック
google-services.jsonファイルをダウンロード- このファイルをAndroidアプリの
app/ディレクトリに配置
- このファイルをAndroidアプリの
- SDKセットアップ手順に従う(Android開発者ガイドで説明)
- Firebase ConsoleでiOSアイコンをクリック
- iOSバンドルIDを入力 (例:
com.example.myapp)- これはXcodeのBundle Identifierと一致する必要があります
- オプションでアプリのニックネームとApp Store IDを入力
- アプリを登録をクリック
GoogleService-Info.plistファイルをダウンロード- このファイルをXcodeプロジェクトルートに追加
- SDKセットアップ手順に従う(iOS開発者ガイドで説明)
このステップはiOSプッシュ通知に必須です。AndroidはFCMを直接使用するため、APNsは不要です。
- Apple Developer Portalにログイン
- Certificates, Identifiers & Profiles > Keysに移動
- **+**ボタンをクリックして新しいキーを作成
- キー名を入力 (例: "My App APNs Key")
- **Apple Push Notifications service (APNs)**にチェック
- Continueをクリックし、次にRegisterをクリック
.p8キーファイルをダウンロード- 重要: このファイルを安全に保存してください — ダウンロードは1回のみ可能です
- Firebase ConsoleでProject Settings > Cloud Messagingに移動
- Apple app configurationの下でUploadをクリック
- 次の情報を提供:
- APNs Authentication Key:
.p8ファイルをアップロード - Key ID: Apple Developer PortalのKeysで確認
- Team ID: Apple Developer PortalのMembershipで確認
- APNs Authentication Key:
- Uploadをクリック
Engage Studioからプッシュ通知を送信するには、Treasure DataのIntegration HubでFirebase統合を設定する必要があります。
- Treasure Data Consoleにログイン
- Integration Hub > Catalogに移動
- Firebase Cloud Messaging (Streaming Egress Connector) を検索
- Create Authenticationをクリック
- 認証を設定:
| フィールド | 説明 | 例 |
|---|---|---|
| Authentication Name | この設定の説明的な名前 | fcm-production |
| Firebase Project ID | Firebase ConsoleからのFirebaseプロジェクトID | my-app-12345 |
| Service Account JSON | Firebase Consoleからのサービスアカウント鍵ファイル (Settings > Service Accounts > Generate new private key) | ダウンロードしたJSONファイルをアップロード |
- Saveをクリック
Treasure Engage Connectorは、Engage Studioからのキャンペーン配信を認証するために使用されます。
- Integration Hub > Catalogに移動
- Treasure Engageを検索
- Create Authenticationをクリック
- 認証を設定:
| フィールド | 説明 |
|---|---|
| Authentication Name | このコネクタの説明的な名前 例: engage-master-key |
| Master API Key | Treasure Data Master API Key セキュリティ注意: このキーはアカウント全体へのアクセス権を持ちます。安全に保存し、定期的にローテーションしてください。 |
- Saveをクリック
次の手順でFirebaseセットアップを確認できます:
- Firebase ConsoleでCloud Messagingに移動
- Send your first messageをクリック
- 通知のタイトルとテキストを入力
- Send test messageをクリック
- デバイスFCMトークンを入力(開発者ガイド実装後、アプリログから取得可能)
- デバイスに通知が表示されることを確認
Treasure Data Consoleで:
- Integration Hub > Authenticationsに移動
- 両方の認証がリストに表示されることを確認:
- Firebase Cloud Messaging (Streaming Egress)
- Treasure Engage
- ステータスがActiveと表示されていることを確認
この時点で、FirebaseとTreasure Dataの統合が設定されました。次のステップは、モバイルアプリでプッシュ通知処理を実装することです。
一部のマーケティングプラットフォームとは異なり、Treasure Dataはモバイルプッシュ通知用の事前構築SDKを提供していません。開発チームは、AndroidおよびiOSアプリに次の機能を実装する必要があります:
- FCM/APNsトークン登録: デバイストークンを取得し、Treasure Dataに送信
- 通知表示: 受信したプッシュ通知を処理
- ユーザーアクショントラッキング: 配信、開封、削除、リンク/ディープリンクイベントをトラッキング
- イベントアップロード: イベントデータをTreasure Data Ingest APIに送信
詳細な実装手順については、次を参照してください:
- APIキーをソースコントロールにコミットしない: 環境変数またはセキュアなキー管理サービスを使用
- 定期的にキーをローテーション: Master API KeyとFirebaseサービスアカウントキーを定期的に変更
- 開発と本番で別々のキーを使用: 各環境に対して異なるFirebaseプロジェクトとTreasure Data書き込みキーを作成
- キー権限を制限: アプリ側のイベントトラッキングには書き込み専用キーを使用
Firebaseサービスアカウント鍵を生成する際:
- Firebase Console > Project Settings > Service Accountsに移動
- Generate new private keyをクリック
- ダウンロードしたJSONファイルを安全に保存
- サービスアカウントに最小限の必要な権限のみがあることを確認:
- Firebase Cloud Messaging API: 有効
- 不要なロールを削除
考えられる原因:
- APNsキーがFirebaseにアップロードされていない
- XcodeとFirebase間のBundle IDの不一致
- デバイスで通知権限が許可されていない
- アプリがリモート通知用に正しく登録されていない
解決策:
- APNsキーがFirebase Consoleに正しくアップロードされていることを確認
- Bundle IDが完全に一致することを確認(大文字小文字を区別)
- iOS設定 > 通知で通知権限ステータスを確認
- iOS開発者ガイドで実装を確認
考えられる原因:
google-services.jsonがプロジェクトに追加されていない- パッケージ名の不一致
- Firebase Cloud Messagingが有効になっていない
- デバイスがオフラインまたはFCMトークンが期限切れ
解決策:
google-services.jsonがapp/ディレクトリにあることを確認build.gradleのパッケージ名がFirebase登録と一致することを確認- Firebase ConsoleでFCMが有効になっていることを確認
- デバイスから新しいFCMトークンをリクエスト
- Android開発者ガイドで実装を確認
考えられる原因:
- Master API Keyが正しくない
- Firebaseサービスアカウント鍵が無効または期限切れ
- Firebase Project IDが正しくない
解決策:
- Master API Keyが正しくアクティブであることを確認
- Firebase Consoleから新しいサービスアカウントキーを生成
- Firebase Project IDを再確認(Firebase Console > Project Settingsで確認)
このセットアップが完了したら:
モバイルアプリ機能を実装:
最初のキャンペーンを作成:
イベントトラッキングをセットアップ: