Skip to content

データ収集のマネージャー

Braze SDKのデータ収集を管理する方法を学習し、必要に応じてデータプライバシー規制に準拠できるようにする。

Google Playプライバシーアンケート

2022年4月から、Android開発者はGoogle Playのデータ安全フォームを完成させ、プライバシーとセキュリティ慣行を開示しなければなりません。このガイドでは、Braze によるアプリデータの処理方法に関する情報をこの新しいフォームに記入する方法について説明します。

アプリ開発者は、どのデータを Braze に送信するかを制御しています。Braze が受け取ったデータは、指示に従って処理されます。これは、Google がサービスプロバイダーとして分類したものです。

質問

質問 Braze SDKの回答
お使いのアプリは、必要なユーザーデータの種類を収集または共有しますか? はい、Braze Android SDK はアプリ開発者によって設定されたデータを収集します。
あなたのアプリが収集するすべてのユーザーデータは転送中に暗号化されていますか? そうです。
ユーザーがデータの削除を要求する方法を提供していますか? そうです。

データおよび削除に対するユーザー要求の処理の詳細については、Braze データのリテンション情報を参照してください。

データ収集

Braze によって収集されるデータは、特定の統合と収集するユーザーデータによって決まります。デフォルトで収集されるデータの詳細、および特定の属性を無効にする方法については、SDK データ収集オプションを参照してください。

カテゴリー データタイプ Braze 使用状況
位置情報 だいたいの位置情報 デフォルトでは収集されません。
正確な位置情報
個人情報 名前
メールアドレス
ユーザー ID
住所
電話番号
人種と民族
政治的または宗教的信条
性的指向
その他の情報
財務情報 ユーザー決済情報
購入履歴
クレジットスコア
その他財務情報
ヘルスとフィットネス ヘルス情報 デフォルトでは収集されません。
フィットネス情報
メッセージ メール デフォルトでは収集されません。
SMS または MMS
その他のアプリ内メッセージ Braze を通じてアプリ内メッセージを送信したり、プッシュ通知を送信する場合、ユーザがこれらのメッセージをいつ開いたか、またはいつ読んだかに関する情報を収集します。
写真と動画 写真 収集されません。
ビデオ
オーディオファイル 音声やサウンドの録音
音楽ファイル
その他のオーディオファイル
ファイルとドキュメント ファイルとドキュメント
カレンダー カレンダーイベント
連絡先 連絡先
アプリアクティビティ アプリのインタラクション Braze は、デフォルトでセッションアクティビティデータを収集します。他のすべてのインタラクションとアクティビティは、アプリのカスタム統合によって決定されます。
アプリ内検索履歴 収集されません。
インストール済みアプリ 収集されません。
その他のユーザー生成コンテンツ デフォルトでは収集されません。
その他のアクション
Web ブラウジング Web 閲覧履歴 収集されません。
アプリの情報とパフォーマンス クラッシュログ Braze は、SDK 内で発生したエラーのクラッシュログを収集します。これには、ユーザの電話機モデルと OS レベル、および Braze 固有のユーザ ID が含まれます。
診断 収集されません。
その他のアプリパフォーマンスデータ 収集されません。
デバイスまたはその他の ID デバイスまたはその他の ID Braze は、ユーザーのデバイスを区別するためにデバイス ID を生成し、メッセージが意図したデバイスに送信されるかどうかをチェックします。

Google Play のデータセーフティガイドラインの対象外となる可能性がある Braze が収集するその他のデバイスデータの詳細については、Android ストレージの概要および SDK データ収集オプションを参照してください。

データトラッキングの無効化

Android SDK でデータ追跡アクティビティを無効にするには、メソッドdisableSDK() を使用します。これにより、すべてのネットワーク接続がキャンセルされます。つまり、Braze SDK はBraze サーバにデータを渡しません。

以前に保存したデータを消去する

wipeData() メソッドを使用して、デバイスに保存されているすべてのクライアント側データを完全にクリアできます。

データトラッキングの再開

データ収集を再開するには、enableSDK() メソッドを使用できます。これにより、以前にワイプされたデータは復元されません。

アップル社のプライバシー・マニフェスト

トラッキングデータとは何か?

アップルは「トラッキングデータ」を、エンドユーザーやデバイスについてあなたのアプリで収集され、第三者のデータ(ターゲット広告など)やデータブローカーにリンクされたデータと定義している。完全な定義と例については、アップルを参照のこと:トラッキングを参照してください。

デフォルトでは、Braze SDKはトラッキングデータを収集しない。ただし、Braze SDKの設定によっては、アプリのプライバシーマニフェストにBraze固有のデータを記載する必要がある場合がある。

プライバシー・マニフェストとは何か?

プライバシーマニフェストは、アプリとサードパーティの SDK がデータを収集する理由と、そのデータ収集方法を説明する Xcode プロジェクト内のファイルです。データを追跡するサードパーティの SDK には、それぞれ独自のプライバシーマニフェストが必要です。アプリのプライバシーレポートを作成すると、これらのプライバシーマニフェストファイルは自動的に1つのレポートに集約される。

APIトラッキング・データ・ドメイン

iOS 17.2 以降、Apple はエンドユーザーが Ad Tracking Transparency (ATT) のプロンプトを受け入れるまで、宣言されたすべてのトラッキングエンドポイントをブロックします。Brazeは、トラッキングデータをルーティングするためのトラッキングエンドポイントを提供し、同時にトラッキング以外のファーストパーティデータを元のエンドポイントにルーティングすることもできる。

Brazeのトラッキングデータを宣言する

前提条件

この機能を実装するには、次のブレーズSDK バージョンが必要です。

ステップ1:現在の方針を見直す

貴社のBraze SDKの現在のデータ収集ポリシーを法務チームと検討し、貴社のアプリがAppleの定義に従ってトラッキングデータを収集しているかどうかを判断する。トラッキングデータを収集していない場合は、現時点でBraze SDKのプライバシーマニフェストをカスタマイズする必要はない。Braze SDK のデータ収集ポリシーの詳細については、SDK データ収集を参照してください。

ステップ2:プライバシー・マニフェストを作成する

まず、XcodeプロジェクトでPrivacyInfo.xcprivacy ファイルを検索して、プライバシー・マニフェストがすでにあるかどうかを確認する。すでにこのファイルを持っている場合は、次のステップに進むことができる。それ以外の場合は、Apple:プライバシー・マニフェストを作成する.

ステップ3:エンドポイントをプライバシー・マニフェストに追加する

Xcode プロジェクトでアプリの PrivacyInfo.xcprivacy ファイルを開き、表を右クリックして、Raw Keys and Values を確認します。

コンテキストメニューが開き、「Raw Keys and Values」が強調表示された Xcode プロジェクト。

[App Privacy Configuration] で [NSPrivacyTracking] を選択し、値を [YES] に設定します。

[NSPrivacyTracking] が [YES] に設定されて開かれている「PrivacyInfo.xcprivacy」ファイル。

App Privacy Configuration」で「NSPrivacyTrackingDomains」を選択する。ドメイン配列で新しい要素を追加し、その値を、sdk-tracking 接頭辞を付けて AppDelegate に以前に追加したエンドポイントに設定します。

「NSPrivacyTrackingDomains」の下に Braze トラッキングエンドポイントがリストされて開かれている「PrivacyInfo.xcprivacy」ファイル。

ステップ4: トラッキングデータを宣言する

次に AppDelegate.swift を開き、静的または動的トラッキングリストを作成して、宣言する各トラッキングプロパティをリストします。Apple は、エンドユーザーが ATT プロンプトを受け入れるまでこれらのプロパティをブロックするため、あなたとあなたの法務チームがトラッキングを検討するプロパティのみをリストします。以下はその例です。

以下の例では、dateOfBirthcustomEvent、および customAttribute が静的リスト内でトラッキングデータとして宣言されています。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import UIKit
import BrazeKit

@main
class AppDelegate: UIResponder, UIApplicationDelegate {

  static var braze: Braze? = nil

  func application(
    _ application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
  ) -> Bool {
    let configuration = Braze.Configuration(apiKey: brazeApiKey, endpoint: brazeEndpoint)
    // Declare which types of data you wish to collect for user tracking.
    configuration.api.trackingPropertyAllowList = [
      .dateOfBirth,
      .customEvent(["event-1"]),
      .customAttribute(["attribute-1", "attribute-2"])
    ]
    let braze = Braze(configuration: configuration)
    AppDelegate.braze = braze
    return true
  }
}

以下の例では、エンドユーザーがATTプロンプトを受け入れた後、トラッキングリストは自動的に更新される。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
func applicationDidBecomeActive(_ application: UIApplication) {
  // Request and check your user's tracking authorization status.
  ATTrackingManager.requestTrackingAuthorization { status in
    // Let Braze know whether user data is allowed to be collected for tracking.
    let enableAdTracking = status == .authorized
    AppDelegate.braze?.set(adTrackingEnabled: enableAdTracking)

    // Add the `.firstName` and `.lastName` properties, while removing the `.everything` configuration.
    AppDelegate.braze.updateTrackingAllowList(
      adding: [.firstName, .lastName],
      removing: [.everything]
    )
  }
}

ステップ5:無限リトライ・ループを防ぐ

SDKが無限再試行ループに入るのを防ぐため、set(adTrackingEnabled: enableAdTracking) メソッドを使用してATTパーミッションを処理する。メソッド内の adTrackingEnabled プロパティは、以下のように処理する必要があります。

1
2
3
4
5
6
7
8
func applicationDidBecomeActive(_ application: UIApplication) {
    // Request and check your user's tracking authorization status.
    ATTrackingManager.requestTrackingAuthorization { status in
      // Let Braze know whether user data is allowed to be collected for tracking.
      let enableAdTracking = status == .authorized
      AppDelegate.braze?.set(adTrackingEnabled: enableAdTracking)
    }
}

データトラッキングの無効化

Swift SDK でデータ追跡アクティビティを無効にするには、Braze インスタンスでenabled プロパティをfalse に設定します。enabledfalse に設定されると、Braze SDK でパブリック API への呼び出しがすべて無視されます。SDKはまた、ネットワークリクエストやイベント処理など、飛行中のすべてのアクションをキャンセルする。

以前に保存したデータを消去する

wipeData() メソッドを使用すると、ローカルに保存されたSDK データをユーザのデバイス上で完全にクリアできます。

Braze Swift バージョン7.0.0 以降では、SDK およびwipeData() メソッドによってデバイスID のUUID がランダムに生成されます。ただし、useUUIDAsDeviceIdfalse _ または_ に設定されている場合、Swift SDK バージョン5.7.0 以前を使用しているときは、/users/delete への投稿リクエストも必要になります。これは、ベンダーの識別子(IDFV) が自動的にそのユーザーのデバイスID として使用されるためです。

データトラッキングの再開

データ収集を再開するには、enabledtrue に設定します。これにより、以前にワイプされたデータは復元されません。

IDFV収集

Braze iOS SDK の以前のバージョンでは、IDFV (ベンダーの識別子) フィールドがユーザーのデバイス ID として自動的に収集されていました。Swift SDK v5.7.0 から、IDFV フィールドはオプションで無効になり、代わりにBraze はランダムなUUID をデバイスID として設定します。Swift SDK v7.0.0 で開始すると、IDFV フィールドはデフォルトでは収集されず、代わりにUUID がデバイスID として設定されます。

useUUIDAsDeviceId 機能により、デバイス ID を UUID として設定するよう Swift SDK が構成されます。従来、iOS SDK では Apple が生成した IDFV 値と同じデバイス ID が割り当てられていました。iOS アプリでこの機能がデフォルトで有効になっている場合、SDK を介して作成されたすべての新規ユーザーに、UUID と同じデバイス ID が割り当てられます。

それでもIDFV を個別に収集する場合は、set(identifierforvendor:) を使用できます。

考慮事項

SDK バージョン

Swift SDK v7.0.0+ では、useUUIDAsDeviceId が有効になっている場合(デフォルト)、作成されたすべての新規ユーザーにランダムなデバイスID が割り当てられます。既存のユーザーは、すべて同じデバイス ID 値を保持します。これは、IDFV である場合もあります。

この機能が有効でない場合、デバイスには引き続き作成時に IDFV が割り当てられます。

ダウンストリーム

テクノロジーパートナー: この機能を有効にすると、Braze デバイス ID から IDFV 値を取得するテクノロジーパートナーは、このデータにアクセスできなくなります。デバイスから派生したIDFV 値がパートナー統合に必要な場合は、この機能をfalse に設定することをお勧めします。

Currents: useUUIDAsDeviceId が true に設定されている場合、Currents で送信されたデバイス ID は IDFV 値と等しくなくなります。

よくある質問

この変更は Braze の既存ユーザーに影響しますか?

いいえ。この機能を有効にしても、Braze のユーザーデータは上書きされません。新しいUUID デバイスID は、新しいデバイスに対して、またはwipedata() が呼び出された場合にのみ作成されます。

この機能をオンにした後にオフにすることはできますか?

はい、この機能はオンとオフを自由に切り替えることができます。以前に保存されたデバイス ID は上書きされません。

Braze を介し、IDFV 値を別の場所で収集することはできますか?

はい、オプションで Swift SDK を使用して IDFV を収集することもできます (収集はデフォルトでは無効です)。

Disabling data tracking

To disable data-tracking activity on the Web SDK, use the method disableSDK(). This will sync any data logged before disableSDK() was called, and will cause all subsequent calls to the Braze Web SDK for this page and future page loads to be ignored.

Use the Disable Tracking or Resume Tracking tag type to disable or re-enable web tracking, respectively. These two options call disableSDK and enableSDK.

Best practices

To provide users with the option to stop tracking, we recommend building a simple page with two links or buttons: one that calls disableSDK() when clicked, and another that calls enableSDK() to allow users to opt back in. You can use these controls to start or stop tracking via other data sub-processors as well.

Resuming data tracking

To resume data collection, you can use the enableSDK() method.

Wiping previously-stored data

To manually trigger a data flush and ensure queued user data or events are sent to Braze servers, use the RequestImmediateDataFlush() method on the UBraze object.

1
UBraze->RequestImmediateDataFlush();
「このページはどの程度役に立ちましたか?」
New Stuff!