Assuranceの設定
モバイルアプリでAdobe Experience Platform Assuranceを設定する方法を説明します。
Assurance(旧称:プロジェクトグリフォン)は、モバイルアプリでデータを収集したりエクスペリエンスを提供したりする方法の検査、配達確認、シミュレーションおよび検証に役立つように設計されています。
Assuranceは、Adobe Experience Platform Mobile SDKで生成された生のSDK イベントを調べるのに役立ちます。 SDKで収集されたすべてのイベントは、閲覧できます。 SDK イベントは、時間順に並べ替えられたリストビューに読み込まれます。 各イベントには、詳細を提供する詳細ビューがあります。 SDK設定、データ要素、共有状態、SDK拡張機能の各バージョンを参照するための追加のビューも提供されます。 0}Assurance} について詳しくは、製品ドキュメントを参照してください。
前提条件
- SDK がインストールおよび設定された状態で、アプリが正常にセットアップされました。
学習目標
このレッスンでは、次の操作を行います。
- 組織がアクセス権を持っていることを確認します(持っていない場合はリクエストします)。
- ベース URL を設定します。
- iOS固有の必須コードを追加します。
- セッションに接続します。
アクセスを確認
組織がAssuranceにアクセスできることを確認します。 ユーザーとして、Adobe Experience Platformのプロファイルに追加される必要があります。 詳しくは、Assurance ガイドの ユーザーアクセスを参照してください。
実装方法
Assuranceをアプリに実装するには:
iOSでアプリケーションのAssurance セッションを開始するには、0}SDKの一般的なインストール } に加えて、次のコードが必要です。
-
Xcode のプロジェクトナビゲーターで Luma > Luma > SceneDelegate に移動します。
-
次のコードを
func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>
に追加します。code language-swift // Called when the app in background is opened with a deep link. if let deepLinkURL = URLContexts.first?.url { // Start the Assurance session Assurance.startSession(url: deepLinkURL) }
このコードは、アプリがバックグラウンドにあり、ディープリンクを使用して開かれたときに、アシュランスセッションを開始します。
AndroidでアプリケーションのAssurance セッションを開始するには、0}SDKの一般的なインストール } に加えて、次のコードが必要です。
-
Android Studio の Android ビューで、app/kotlin+java/com.adobe.luma.tutorial.android/LumaApplication に移動します。
-
次のコードを
fun handleDeeplink(deeplink: String?)
に追加します。code language-kotlin // Called when the app in background is opened with a deep link. if (deeplink.isNullOrEmpty()) { Log.w("Luma", "Deeplink is null or empty") return } Log.i("Luma", "Handling deeplink: $deeplink") Assurance.startSession(deeplink)
このコードは、アプリがバックグラウンドにあり、ディープリンクを使用して開かれたときに、アシュランスセッションを開始します。
詳しくは、Assurance API リファレンスを参照してください。
バンドル識別子の定義
アプリに一意のバンドル ID を指定する必要があります。
- Xcode でプロジェクトを開きます。
- プロジェクト ナビゲータで [Luma] を選択します。
- Luma ターゲットを選択します。
- 「署名と機能」タブを選択します。
- バンドル識別子 を定義します。
各バンドル ID は一意である必要があるので、unique バンドル ID を使用し、com.adobe.luma.tutorial.swiftui
バンドル ID を置き換えてください。 通常は、バンドル ID 文字列(com.organization.brand.uniqueidentifier
など)に逆 DNS 形式を使用します。 たとえば、このチュートリアルの完成バージョンでは com.adobe.luma.tutorial.swiftui
を使用します。
- Android Studio でプロジェクトを開きます。
- ナビゲーターで build.gradle.kts (Module :app) を選択します。
- 必ず unique バンドル ID を使用し、
com.adobe.luma.tutorial.android
のnamespace
のandroid
値を - 必ず、同じ 一意の バンドル ID を使用し、
com.adobe.luma.tutorial.android
のapplicationId
のdefaultConfig
のandroid
を置き換えてください
通常は、バンドル ID 文字列(com.organization.brand.uniqueidentifier
など)に逆 DNS 形式を使用します。 たとえば、このチュートリアルの完成バージョンでは com.adobe.luma.tutorial.android
を使用します。
ベース URL の設定
ディープリンクが確実に機能するようにベース URL を設定する必要があります。
-
Xcode のプロジェクトに移動します。
-
プロジェクト ナビゲータで [Luma] を選択します。
-
Luma ターゲットを選択します。
-
「情報」タブを選択します。
-
ベース URL を追加するには、下にスクロールして URL タイプ を表示し、「+」ボタンを選択します。
-
識別子 を任意のバンドル識別子に設定し、任意の URL スキーム を設定します。
各バンドル ID は一意である必要があるので、unique バンドル ID を使用し、com.adobe.luma.tutorial.swiftui
バンドル ID を置き換えてください。 通常は、バンドル ID 文字列(com.organization.brand.uniqueidentifier
など)に逆 DNS 形式を使用します。 バンドル識別子の定義で使用したのと同じバンドル識別子を使用できます。
同様に、一意の URL スキームを使用し、既に提供されている lumatutorialswiftui
を一意の URL スキームに置き換えます。
iOSの URL スキームについて詳しくは、Appleのドキュメントを参照してください。
Assuranceは、ブラウザーまたは QR コードを使用して URL を開くことで機能します。 この URL は、アプリを開くベース URL で始まり、追加のパラメーターが含まれています。 これらの一意のパラメーターは、セッションへの接続に使用されます。 サンプルアプリでは、ディープリンクは lumatutorialswiftui://
です。
-
Android Studio のプロジェクトの 0}Android} ビューに移動します。
-
ナビゲーターで app/manifest/AndroidManifest.xml を選択します。
-
manifest/application/activity XML 要素が次のようになっていることを確認します。
code language-xml <activity android:name=".MainActivity" android:exported="true" android:theme="@style/Theme.LumaAndroid"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> <intent-filter android:label="@string/app_name"> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="lumatutorialandroid" android:host="default" /> </intent-filter> </activity>
必ず android:scheme
(例:)を指定します。 lumatutorialandroid
)と android:host
(例:default
)を使用して、ベース URL を定義します。
Androidのディープリンクについて詳しくは、 アプリコンテンツへのディープリンクの作成を参照してください。
Assuranceは、ブラウザーまたは QR コードを使用して URL を開くことで機能します。 その URL はベース URL で始まり、アプリが開き、追加のパラメーターが含まれます。 これらの一意のパラメーターは、セッションへの接続に使用されます。 サンプルアプリでは、ディープリンクは lumatutorialandroid://default
です。
セッションへの接続
Assuranceを使用してセッションに接続できるようになりました。
Xcode で:
-
必要に応じて、特に予期しない結果が発生した場合に、ビルドを クリーン する必要がある場合があります。 Xcode 製品 メニューから「ビルドフォルダーをクリーン」を選択します。
-
Luma アプリが場所を使用することを許可する ダイアログで、「アプリの使用中に許可 を選択し す。
-
Luma アプリ」が通知を送信したい ダイアログで、「許可」を選択します。
-
「続行…」を選択し、アプリがアクティビティを追跡できるようにします。
-
「Luma アプリ」が他社のアプリや web サイトをまたいだアクティビティを追跡することを許可する」ダイアログで 「許可」を選択します。
-
「続行」を選択します。
ブラウザーで以下を実行します。
-
データ収集 UI に移動します。
-
左パネルから 0}Assurance} を選択します。
-
「新規セッションを作成」を選択し、「ディープリンク接続」オプションを選択します。
-
開始 を選択します。
-
などの セッション名
Luma Mobile App Session
と ベース URL を指定します。これは、Xcode で入力した URL スキームであり、://
の後に続きます。例:lumatutorialswiftui://
-
「次へ」を選択します。
-
新規セッションを作成 モーダルダイアログで、次の操作を行います。
物理デバイスを使用している場合:
-
「QR コードをスキャン」を選択します。 アプリを開くには、物理デバイスのカメラを使用して QR コードをスキャンし、リンクをタップします。
シミュレーターを使用する場合:
-
リンクをコピー を選択します。
-
-
-
アプリが読み込まれると、手順 7 に示すように、PIN を入力するよう求めるモーダルダイアログが表示されます。
PIN を入力し、「接続」を選択します。
-
接続に成功した場合は、次のように表示されます。
-
アプリの上に浮かぶAssurance アイコン。
-
Assurance UI でのExperience Cloudの更新点は次のとおりです。
-
アプリから発生するエクスペリエンスイベント。
-
選択したイベントの詳細。
-
デバイスとタイムライン。
-
-
-
「続行」を選択して、ホーム画面に移動します。
Android Studio で以下を行います。
-
必要に応じて、特に予期しない結果が発生した場合に、ビルドを クリーン する必要がある場合があります。 Android Studio の ビルド メニューから プロジェクトをクリーン を選択します。
-
Luma Androidが通知を送信することを許可する ダイアログで、「許可」を選択します。
-
権限ダイアログを表示 を選択します。
-
Luma Androidがこのデバイスの場所にアクセスすることを許可しますか?…
- 正確 を選択します。
- 「アプリの使用中」を選択します。
-
アプリの紹介画面に戻り、「デバイス設定を開く」を選択します。
-
ロケーション権限 画面で、「常に許可」を選択します。 次に、「←」を選択して、アプリの紹介画面に戻ります。
-
「続行」を選択して、ホーム画面に移動します。
ブラウザーで以下を実行します。
-
データ収集 UI に移動します。
-
左パネルから 0}Assurance} を選択します。
-
「新規セッションを作成」を選択し、「ディープリンク接続」オプションを選択します。
-
開始 を選択します。
-
などの セッション名
Luma Mobile App Session
と、ベース URL を指定します。これは、Android Studio のandroid:scheme
AndroidManifest.xmlandroid:host
で定義した と です(://
で区切ります)。例:lumatutorialandroid://default
-
「次へ」を選択します。
-
新規セッションを作成 モーダルダイアログで、次の操作を行います。
物理デバイスを使用している場合:
-
「QR コードをスキャン」を選択します。 アプリを開くには、物理デバイスのカメラを使用して QR コードをスキャンし、リンクをタップします。
シミュレーターを使用する場合:
- リンクをコピー を選択します。
-
Chromeで Luma Androidを続行 するように求められたら、続行 を選択します。
-
-
アプリが読み込まれると、手順 7 に示すように、PIN を入力するよう求めるモーダルダイアログが表示されます。
PIN を入力し、「接続」を選択します。
-
接続に成功した場合は、次のように表示されます。
-
アプリの上に浮かぶAssurance アイコン。
-
Assurance UI でのExperience Cloudの更新点は次のとおりです。
-
アプリから発生するエクスペリエンスイベント。
-
選択したイベントの詳細。
-
デバイスとタイムライン。
-
-
拡張機能の検証
アプリが最新の拡張機能を使用しているかどうかを確認するには:
-
設定 を選択します。
-
-
「保存」を選択します。
-
拡張機能のバージョン(例:Messaging および Optimize)を更新するには、パッケージの依存関係 (例:AEPMessaging)からパッケージ(拡張機能)を選択し、コンテキストメニューから「パッケージを更新」を選択します。 Xcode はパッケージの依存関係を更新します。
古い拡張機能が表示される場合は、Android Studio のドキュメントでプロジェクトのディペンデンシーモジュールを更新する方法を参照してください。
次のトピック:同意の実装