ID データの収集
モバイルアプリでID データを収集する方法について説明します。
Adobe Experience Platform Identity Serviceを利用すれば、顧客とその行動をより詳細に把握できます。 このサービスは、デバイスやシステムをまたいでIDを橋渡しし、インパクトのあるパーソナライズされたデジタル体験をリアルタイムで提供することを可能にします。 ID フィールドと名前空間は、様々なデータソースを結合し、360度のリアルタイム顧客プロファイルを構築するための接着剤です。
ID拡張機能とID サービス について詳しくは、ドキュメントを参照してください。
前提条件
- SDKがインストールされ、設定されたアプリが正常に構築され、実行されました。
学習目標
このレッスンでは、次の操作を行います。
- カスタム ID名前空間を設定します。
- IDを更新します。
- ID グラフを検証します。
- ECIDと他のIDを取得します。
カスタム ID名前空間の設定
ID名前空間は、IDが関連するコンテキストの指標として機能するID サービス のコンポーネントです。 例えば、値name@email.comを電子メールアドレスとして、または443522を数値CRM IDとして区別します。
新しいID名前空間を作成するには:
-
データ収集インターフェイスで、左側のパネルのナビゲーションから「ID」を選択します。
-
「ID 名前空間を作成」を選択します。
-
Luma CRM IDの表示名、および ID シンボル の値lumaCRMIdを指定してください。 -
クロスデバイス IDを選択します。
-
「作成」を選択します。
{modal="regular"}
IDを更新
ユーザーがアプリにログインしたときに、標準ID (電子メール)とカスタム ID (Luma CRM ID)の両方を更新する必要があります。
-
Xcode プロジェクトナビゲーターのLuma > Luma > Utils > MobileSDKに移動して、
func updateIdentities(emailAddress: String, crmId: String)関数の実装を見つけます。 関数に次のコードを追加します。code language-swift // Set up identity map, add identities to map and update identities let identityMap: IdentityMap = IdentityMap() let emailIdentity = IdentityItem(id: emailAddress, authenticatedState: AuthenticatedState.authenticated) let crmIdentity = IdentityItem(id: crmId, authenticatedState: AuthenticatedState.authenticated) identityMap.add(item:emailIdentity, withNamespace: "Email") identityMap.add(item: crmIdentity, withNamespace: "lumaCRMId") Identity.updateIdentities(with: identityMap)このコード:
-
空の
IdentityMapオブジェクトを作成します。code language-swift let identityMap: IdentityMap = IdentityMap() -
電子メールとCRM ID用に
IdentityItemオブジェクトを設定します。code language-swift let emailIdentity = IdentityItem(id: emailAddress, authenticatedState: AuthenticatedState.authenticated) let crmIdentity = IdentityItem(id: crmId, authenticatedState: AuthenticatedState.authenticated) -
これらの
IdentityItemオブジェクトをIdentityMapオブジェクトに追加します。code language-swift identityMap.add(item:emailIdentity, withNamespace: "Email") identityMap.add(item: crmIdentity, withNamespace: "lumaCRMId") -
Identity.updateIdentitiesAPI呼び出しの一部としてIdentityItemオブジェクトをEdge Networkに送信します。code language-swift Identity.updateIdentities(with: identityMap)
-
-
Xcode プロジェクトナビゲーターのLuma > Luma > Views > General > LoginSheetに移動し、Login ボタンを選択するときに実行するコードを見つけます。 次のコードを追加します。
code language-swift // Update identities MobileSDK.shared.updateIdentities(emailAddress: currentEmailId, crmId: currentCRMId)
-
Android Studio ナビゲーターのAndroid
> app > kotlin+java > com.adobe.luma.tutorial.android > models > MobileSDKに移動して、fun updateIdentities(emailAddress: String, crmId: String)関数の実装を見つけます。 関数に次のコードを追加します。code language-kotlin // Set up identity map, add identities to map and update identities val identityMap = IdentityMap() val emailIdentity = IdentityItem(emailAddress, AuthenticatedState.AUTHENTICATED, true) val crmIdentity = IdentityItem(crmId, AuthenticatedState.AUTHENTICATED, true) identityMap.addItem(emailIdentity, "Email") identityMap.addItem(crmIdentity, "lumaCRMId") Identity.updateIdentities(identityMap)このコード:
-
空の
IdentityMapオブジェクトを作成します。code language-kotlin val identityMap = IdentityMap() -
電子メールとCRM ID用に
IdentityItemオブジェクトを設定します。code language-kotlin val emailIdentity = IdentityItem(emailAddress, AuthenticatedState.AUTHENTICATED, true) val crmIdentity = IdentityItem(crmId, AuthenticatedState.AUTHENTICATED, true) -
これらの
IdentityItemオブジェクトをIdentityMapオブジェクトに追加します。code language-kotlin identityMap.addItem(emailIdentity, "Email") identityMap.addItem(crmIdentity, "lumaCRMId") -
Identity.updateIdentitiesAPI呼び出しの一部としてIdentityItemオブジェクトをEdge Networkに送信します。code language-kotlin Identity.updateIdentities(identityMap)
-
-
Android Studio ナビゲーターのAndroid
> app > kotlin+java > com.adobe.luma.tutorial.android > views > LoginSheet.ktに移動し、Login ボタンを選択するときに実行するコードを見つけます。 次のコードを追加します。code language-kotlin // Update identities MobileSDK.shared.updateIdentities( MobileSDK.shared.currentEmailId.value, MobileSDK.shared.currentCRMId.value )
updateIdentities呼び出しで複数のIDを送信できます。 また、以前に送信したIDを変更することもできます。IDの削除
Identity.removeIdentity APIを使用して、保存されているクライアントサイド ID マップからIDを削除できます。 ID拡張機能は、Edge NetworkへのIDの送信を停止します。 このAPIを使用しても、サーバーサイド ID グラフから識別子が削除されません。 ID グラフについて詳しくは、ID グラフの表示を参照してください。
-
Xcode プロジェクトナビゲーターのLuma > Luma > Utils > MobileSDKに移動し、次のコードを
func removeIdentities(emailAddress: String, crmId: String)関数に追加します。code language-swift // Remove identities and reset email and CRM Id to their defaults Identity.removeIdentity(item: IdentityItem(id: emailAddress), withNamespace: "Email") Identity.removeIdentity(item: IdentityItem(id: crmId), withNamespace: "lumaCRMId") currentEmailId = "testUser@gmail.com" currentCRMId = "b642b4217b34b1e8d3bd915fc65c4452" -
Xcode プロジェクトナビゲーターのLuma > Luma > Views > General > LoginSheetに移動し、ログアウト ボタンを選択するときに実行するコードを見つけます。 次のコードを追加します。
code language-swift // Remove identities MobileSDK.shared.removeIdentities(emailAddress: currentEmailId, crmId: currentCRMId)
-
Android Studio ナビゲーターのAndroid
> app > kotlin+java > com.adobe.luma.tutorial.android > models > MobileSDKに移動し、fun removeIdentities(emailAddress: String, crmId: String)関数に次のコードを追加します。code language-kotlin // Remove identities and reset email and CRM Id to their defaults Identity.removeIdentity(IdentityItem(emailAddress), "Email") Identity.removeIdentity(IdentityItem(crmId), "lumaCRMId") currentEmailId.value = "testUser@gmail.com" currentCRMId.value = "112ca06ed53d3db37e4cea49cc45b71e"
1.Android Studio ナビゲーターのapp > kotlin+java > com.adobe.luma.tutorial.android > 表示 > LoginSheet.ktに移動し、ログアウト ボタンを選択するときに実行するコードを見つけます。 次のコードを追加します。
| code language-kotlin |
|---|
|
Assurance での検証
-
シミュレーターまたはデバイスをAssuranceに接続するには、設定の手順 セクションを確認してください。
-
Luma アプリで
- 「ホーム」タブを選択し、Assurance アイコンを左に動かします。
- 右上の「
」アイコンを選択します。
ID画面で、次の操作を行います。
- 電子メールアドレスとCRM IDを指定する、または
- A | (iOS)またはランダムな電子メールを生成 (Android)を選択すると、電子メールと CRM ID がランダムに生成されます。
- 「ログイン」を選択します。
Assuranceに戻る:
- com.adobe.griffon.mobile ベンダーからEdge ID Update Identities イベントのAssurance web インターフェイスを調べます。
- イベントを選択し、ACPExtensionEventData オブジェクト内のデータを確認します。 更新したIDが表示されます。
{modal="regular"}
ID グラフを使用した検証
Experience Platform レッスン の手順を完了すると、Experience Platform ID グラフビューアでID キャプチャを確認できます。
-
データ収集UIで「ID」を選択します。
-
上部バーから「ID グラフ」を選択します。
-
Luma CRM IDを ID名前空間 として入力し、CRM ID (例:24e620e255734d8489820e74f357b5c8)を ID値 として入力します。 -
リストに Id が表示されます。
{modal="regular"}
Identity.resetIdentitiesおよびMobileCore.resetIdentities API呼び出しを参照してください。 プッシュ通知識別子( プッシュ通知の送信を参照)を使用すると、その識別子はデバイス上の別の「スティッキー」プロファイル識別子になります。