UID2 Client-Side Integration Guide for Mobile
このガイドは、モバイルアプリのみの変更で UID2 とインテグレーションしたいモバイルアプリパブリッシャー向けです。
以下の手順は、Private Operator を使用したいパブリッシャーや、Server-Side でトークンを生成したいパブリッシャーには適用されません。これらのパブリッシャーは、Client-Server Integration Guide for Mobile に従う必要があります。
このページでは、インテグレーション手順の概要と、追加のドキュメントへのリンクを提供します。
UID2 は、Android および iOS 向けのモバイル SDK を提供しています。各 SDK には以下の機能があります:
- UID2 identity (UID2 Token と関連する値) を生成し、ローカルファイルストレージに保存します。
- UID2 Token を自動的にリフレッシュします。
このガイドの、UID2 mobile SDKs は、SDK for Android と SDK for iOS の両方を含むグループ用語です。
モバイルパブリッシャーインテグレーションに関する FAQs については、FAQs for Mobile Integrations を参照してください。
UID2 を Client-Side でインテグレーションするには、以下の手順を完了する必要があります:
-
Check that the token was successfully generated and then pass it for bidstream use.
-
Optionally, integrate the UID2 GMA/IMA Plugin for GAM Secure Signals integration.
Mobile SDK Version
このガイドは、次のいずれかの UID2 mobile SDK を使用する方法について説明します:
- SDK for Android (version 1.6.0 以降)
- SDK for iOS (version 1.7.0 以降)
正しい SDK/バージョンをモバイルアプリにインストールする手順については、Add the UID2 Mobile SDK to Your Mobile App を参照してください。
Client-Side Integration Example
UID2 mobile SDK の設定方法と、モバイル用の Client-Side インテグレーションを使用したトークンの生成方法の例については、UID2 開発アプリを試してください。
Android または iOS 向けの適用可能な手順に従ってください:
- Android
- iOS
- SDK for Android source code repository on GitHub の main ブランチをチェックアウトします。
- Android Studio (Jellyfish/v2023.3.1 または SDK for Android リリース時に必要な Android Gradle Plugin バージョンをサポートする将来のバージョン) で、チェックアウトしたディレクトリを開きます。
- AndroidManifest.xml で、
uid2_environment_euid
をfalse
に設定します。 - dev-app アプリを実行します。
- アプリを起動したら、Client Side チェックボックスがチェックされていることを確認します。
- メールアドレスまたは電話番号を入力し、右側の矢印をクリックします。
-
main branch of the UID2 SDK For iOS source code repository on GitHub をチェックアウトします。
-
Xcode で、このプロジェクトファイルを開きます:
Development/UID2SDKDevelopmentApp/UID2SDKDevelopmentApp.xcodeproj
-
Xcode のエディタで、
Development/UID2SDKDevelopmentApp/UID2SDKDevelopmentApp/Info.plist
のUID2EnvironmentEUID
キーをNO
に設定します。または、コマンドラインからplutil
を使用できます:plutil -replace UID2EnvironmentEUID -bool NO Development/UID2SDKDevelopmentApp/UID2SDKDevelopmentApp/Info.plist
EUID 環境を使うには、
plutil -replace UID2EnvironmentEUID -bool YES Development/UID2SDKDevelopmentApp/UID2SDKDevelopmentApp/Info.plist
-
UID2SDKDevelopmentApp アプリのスキームを実行します。
-
アプリを起動したら、Client Side チェックボックスがチェックされていることを確認します。
-
メールアドレスまたは電話番号を入力し、右側の矢印をクリックします。
アプリの背後で、開発アプリは次の UID2 SDK API コールを行います。このコールは、メール/電 話番号入力に対して UID2 Service に identity (UID2 Token と関連する値) を生成するリクエストを送信します:
- Android
- iOS
UID2Manager.getInstance().generateIdentity(
identityRequest: IdentityRequest,
subscriptionId: String,
publicKey: String,
onResult: (GenerateIdentityResult) -> Unit
)
UID2Manager.shared.generateIdentity(
_ identity: IdentityType,
subscriptionID: String,
serverPublicKey: String,
appName: String? = nil
)
API コールが成功すると、アプリは生成された identity を表示し、UID2Manager
クラス内に永続化します。
identity には、getAdvertisingToken()
メソッドコールで取得できる UID2 Advertising Token が含まれます:
- Android
- iOS
UID2Manager.getInstance().getAdvertisingToken()
UID2Manager.shared.getAdvertisingToken()
このメソッドコールは、広告リクエストを行うために必要な値を返します: 詳細は Pass Generated Token for Bidstream Use を参照してください。
Testing With Your Own Configuration
デフォルトでは、開発アプリは Subscription ID と public key のデフォルト値を使用します。これらの値は、次のオブジェクトに保存されています:
- Android
- iOS
com.uid2.dev.ui.MainScreenViewModel.Companion
RootViewModel
デフォルトでは、開発アプリは UID2 インテグレーション環境に接続されています。これは、次の Android メソッドコール/iOS ファイルで指定されています:
- Android
- iOS
com.uid2.UID2Manager.Companion#init
see UID2SDKDevelopmentApp/UID2SDKDevelopmentApp/Info.plist
必要に応じて、デフォルトの Subscription ID と public key を割り当てられた値に変更し、UID2 本番環境に接続することもできます。詳細は Optional: Specifying the API Base URL to Reduce Latency を参照してください。
Complete the UID2 Account Setup
アカウントをセットアップするには、Account Setup に記載されている手順に従ってください。アカウントセットアッププロセスの一環として、UID2 mobile SDK とインテグレーションするすべてのモバイルアプリの app names のリストを提供する必要があります。これには、以下の値が該当します:
- Android Application ID
- iOS Bundle Identifier
- iOS App Store ID
アカウントのセットアップが完了すると、UID2 サーバーがユーザー を識別するために使用する 2 つの値であるクライアントキーペアが発行されます: Subscription ID と Public key。これらの値はあなたに固有で、UID2 モジュールの設定に使用します。詳細は Subscription ID and Public Key を参照してください。
Add the UID2 Mobile SDK to Your Mobile App
Mobile SDK をアプリに追加するには、適用可能な以下のドキュメントに従ってください:
SDK をアプリに追加したら、SDK を使用して UID2 Token を生成する準備が整います。
Using the UID2 Integration Environment
デフォルトでは、SDK は UID2 本番環境で動作するように構成されています: https://prod.uidapi.com
。代わりにインテグレーション環境を使用する場合は、UID2Manager
の初期化に次の URL を指定してください:
- Android
- iOS
UID2Manager.init(
context = this,
UID2Manager.Environment.Custom("https://operator-integ.uidapi.com")
)
// Must be set before UID2Manager.shared is accessed
UID2Settings.shared.uid2Environment = .custom(
url: URL(string: "https://operator-integ.uidapi.com")!
)
次のような環境間の違いに注意してください:
- UID2 インテグレーション環境のトークンは、ビッドストリームに渡しても有効ではありません。
- 各環境(インテグレーションおよび本番)には異なる API Key とクライアントシークレット値があります。各環境で正しい値を使用してください。
Optional: Specifying the API Base URL to Reduce Latency
デフォルトでは、この SDK は米国の UID2 本番環境サーバーにリクエストを送信します。
ユースケースに最適な URL を選択する方法と、有効なベース URL の完リストについては、Environments を参照してください。
別の UID2 サーバを指定するには、次の例に示すように構成変更を行います:
- Android
- iOS
UID2Manager.init(
context = this,
UID2Manager.Environment.Custom("https://global.prod.uidapi.com")
)
// or use a named environment
UID2Manager.init(
context = this,
UID2Manager.Environment.Sydney
)
// Must be set before UID2Manager.shared is accessed
UID2Settings.shared.uid2Environment = .custom(
url: URL(string: "https://global.prod.uidapi.com")!
)
// or use a named environment
UID2Settings.shared.uid2Environment = .sydney
Configure the UID2 Mobile SDK
UID2 は、以下の値を提供します。これらは、UID2 Token を Client-Side クライアで生成する際に必要です:
- Subscription ID
- Public key
これらの値は、アカウントセットアップ時に受け取ります。インテグレーション環境用の 1 つのセットと、本番環境用の別のセットがあります。
SDK を構成するには、アカウントセットアップ時に受け取った Subscription ID と public key、およびユーザーのハッシュ化またはハッシュ化されていない直接識別情報 (DII) (メールアドレスまたは電話番号) を次のメソッドコールに渡す必要があります:
- Android
- iOS
UID2Manager.getInstance().generateIdentity(
identityRequest: IdentityRequest,
subscriptionId: String,
publicKey: String,
onResult: (GenerateIdentityResult) -> Unit
)
UID2Manager.shared.generateIdentity(
_ identity: IdentityType,
subscriptionID: String,
serverPublicKey: String,
appName: String? = nil
)
設定が完了すると、UID2 mobile SDK は以下の操作を行います:
- ユーザーの UID2 identity (トークンを含む) を生成します。
- トークンをユーザーのデバイスにローカルに保存します。
- アプリが開いている間、必要に応じてトークンを自動的にリフレッシュします。
ユーザーの DII を UID2 mobile SDK に渡す際、ハッシュ化またはハッシュ化されていない DII を渡すことができます。DII をハッシュ化されていない状態で渡す場合、SDK がハッシュ化します。ハッシュ化された DII を SDK に渡す場合、ハッシュ化する前に正規化する必要があります。詳細は Normalization and Encoding を参照してください。