Assuranceの設定
モバイルアプリでAdobe Experience Platform Assuranceを設定する方法を説明します。
Assurance (正式にはProject Griffonと呼ばれます)は、モバイルアプリでデータを収集したり、エクスペリエンスを提供したりする方法を調査、検証、シミュレーション、検証するために設計されています。
Assuranceは、Adobe Experience Platform Mobile SDKによって生成された生のSDK イベントを調べるのに役立ちます。 SDKが収集したすべてのイベントは閲覧できます。 SDK イベントは、時間で並べ替えられたリストビューに読み込まれます。 各イベントには、詳細を示す詳細ビューが用意されています。 SDKの設定、データ要素、共有ステート、SDK拡張機能のバージョンを参照するための追加のビューも提供されています。 Assuranceについて詳しくは、製品ドキュメントを参照してください。
前提条件
- SDKがインストールされ、設定されたアプリを正常に設定しました。
学習目標
このレッスンでは、次の操作を行います。
- 組織にアクセス権があることを確認します(アクセス権がない場合はリクエストしてください)。
- ベース URLを設定します。
- 必要なiOS固有のコードを追加します。
- セッションに接続します。
アクセスを確認
お客様の組織がAssuranceにアクセスできることを確認します。 Adobe Experience Platformのプロフィールに追加する必要があります。 詳しくは、Assurance ガイドの ユーザーアクセス を参照してください。
実装方法
アプリにAssuranceを実装するには:
一般的なSDK インストール に加えて、iOSでは、アプリのAssurance セッションを開始するために次の追加コードも必要です。
-
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) }このコードは、アプリがバックグラウンドで、ディープリンクを使用して開かれたときに保証セッションを開始します。
一般的なSDK インストール に加えて、Androidでは、アプリのAssurance セッションを開始するために次の追加コードも必要です。
-
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の定義
アプリに一意のバンドル IDを指定する必要があります。
- Xcodeでプロジェクトを開きます。
- プロジェクトナビゲーターで「Luma」を選択します。
- Luma ターゲットを選択します。
- 「署名と機能」タブを選択します。
- バンドル識別子を定義します。
各バンドル識別子は一意である必要があるため、一意の バンドル識別子を使用し、com.adobe.luma.tutorial.swiftui バンドル識別子を置き換えることを確認してください。 通常、com.organization.brand.uniqueidentifierのようなバンドル ID文字列には逆引きDNS形式を使用します。 このチュートリアルの「完了」バージョンでは、例えばcom.adobe.luma.tutorial.swiftuiが使用されます。
- Android Studioでプロジェクトを開きます。
- ナビゲーターで build.gradle.kts (モジュール :app) を選択します。
- 一意の バンドル IDを使用し、
androidのnamespaceのcom.adobe.luma.tutorial.android値を置き換えてください - 同じ一意の バンドル IDを使用し、
androidのdefaultConfigのapplicationIdのcom.adobe.luma.tutorial.androidを置き換えてください
通常、com.organization.brand.uniqueidentifierのようなバンドル ID文字列には逆引きDNS形式を使用します。 このチュートリアルの「完了」バージョンでは、例えばcom.adobe.luma.tutorial.androidが使用されます。
ベース URLの設定
ディープリンクが機能するように、ベース URLを設定する必要があります。
-
Xcodeでプロジェクトに移動します。
-
プロジェクトナビゲーターで「Luma」を選択します。
-
Luma ターゲットを選択します。
-
「情報」タブを選択します。
-
ベース URLを追加するには、URL タイプまでスクロールし、+ ボタンを選択します。
-
識別子を選択したバンドル識別子に設定し、選択した URL スキーム を設定します。
{modal="regular"}
各バンドル識別子は一意である必要があるため、一意の バンドル識別子を使用し、com.adobe.luma.tutorial.swiftui バンドル識別子を置き換えることを確認してください。 通常、com.organization.brand.uniqueidentifierのようなバンドル ID文字列には逆引きDNS形式を使用します。 バンドル識別子で使用したのと同じバンドル識別子を使用できます。
同様に、一意のURL スキームを使用し、既に提供されているlumatutorialswiftuiを一意のURL スキームに置き換えます。
IOSのURL スキームについて詳しくは、Appleのドキュメント を参照してください。
Assuranceは、ブラウザーまたはQR コードを使用してURLを開くことで機能します。 そのURLは、アプリを開き、追加のパラメーターを含むベース URLで始まります。 これらの一意のパラメーターは、セッションの接続に使用されます。 サンプルアプリでは、ディープリンクはlumatutorialswiftui://です。
-
Android StudioのプロジェクトのAndroid ビューに移動します。
-
ナビゲーターでapp > マニフェスト > 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でのディープリンクについて詳しくは、Android ドキュメントの ディープリンクの作成を参照してください。
Assuranceは、ブラウザーまたはQR コードを使用してURLを開くことで機能します。 そのURLはベース URLで始まり、アプリが開き、追加のパラメーターが含まれます。 これらの一意のパラメーターは、セッションの接続に使用されます。 サンプルアプリでは、ディープリンクはlumatutorialandroid://defaultです。
セッションへの接続
Assuranceを使用してセッションに接続できるようになりました。
Xcodeの場合:
-
を使用して、シミュレーターまたはXcodeの物理デバイスでアプリをビルドまたは再構築して実行します。オプションとして、特に予期しない結果が表示された場合は、ビルドを クリーン する必要がある場合があります。 Xcode 製品 メニューから「クリーンビルドフォルダー…」を選択します。
-
位置情報の使用を許可 ダイアログで、アプリの使用許可を選択します。
{width="300"}
-
「Luma アプリ」で通知を送信する ダイアログで、許可を選択します。
{width="300"}
-
「続行…」を選択して、アプリがアクティビティを追跡できるようにします。
{width="300"}
-
他の会社のアプリやweb サイト ダイアログで「Luma アプリ」にアクティビティを追跡することを許可するには、許可を選択します。
{width="300"}
-
続行を選択します。
ブラウザーで以下を実行します。
-
データ収集UIに移動します。
-
左側のパネルから「Assurance」を選択します。
-
「新しいセッションを作成」を選択し、オプション「ディープリンク接続」を選択します。
-
開始を選択します。
-
Luma Mobile App Sessionや 基本URL などの セッション名 を指定します。これは、Xcodeに入力したURL スキームで、://に続きます。例:lumatutorialswiftui:// -
「次へ」を選択します。
{modal="regular"}
-
新しいセッションを作成 モーダルダイアログで、次の操作を行います。
物理デバイスを使用している場合:
-
QR コードをスキャンを選択します。 アプリを開くには、物理的なデバイスのカメラを使用してQR コードをスキャンし、リンクをタップします。
{modal="regular"}
シミュレーターを使用している場合:
- 「リンクをコピー」を選択します。
-
を使用してディープリンクをコピーし、ディープリンクを使用して、シミュレーターでSafariを使用してアプリを開きます。
{modal="regular"}
-
-
アプリが読み込まれると、手順7に示すPINを入力するように求めるモーダルダイアログが表示されます。
{width="300"}
PINを入力し、Connectを選択します。
-
接続が成功した場合は、次のように表示されます。
-
アプリの上に表示されているAssuranceアイコン。
{width="300"}
-
Assurance UIに加えられた更新(以下を示す)。
-
アプリから送信されるエクスペリエンスイベント。
-
選択したイベントの詳細。
-
デバイスとタイムライン:
{modal="regular"}
-
-
-
「続行」を選択して、ホーム画面に移動します。
Android Studioの場合:
-
を使用して、シミュレーターまたはAndroid Studioの物理デバイスでアプリをビルドまたは再構築して実行します。オプションとして、特に予期しない結果が表示された場合は、ビルドを クリーン する必要がある場合があります。 Android Studio ビルド メニューから「プロジェクトをクリーンアップ」を選択します。
-
Luma Androidによる通知の送信を許可 ダイアログで、許可を選択します。
{width="300"}
-
権限ダイアログを表示を選択します。
{width="300"}
-
Luma Androidがこのデバイスの場所にアクセスできるようにしますか?…
{width="300"}
- 正確を選択します。
- アプリの使用中を選択します。
-
概要アプリ画面に戻り、デバイス設定を開くを選択します。
-
場所の権限画面で、すべての時間を許可を選択します。 次に、←を選択して、概要アプリ画面に戻ります。
{width="300"}
-
「続行」を選択して、ホーム画面に移動します。
ブラウザーで以下を実行します。
-
データ収集UIに移動します。
-
左側のパネルから「Assurance」を選択します。
-
「新しいセッションを作成」を選択し、オプション「ディープリンク接続」を選択します。
-
開始を選択します。
-
Luma Mobile App Sessionや 基本URL などの セッション名 を指定します。これは、AndroidManifest.xmlでAndroid Studioで定義したandroid:schemeとandroid:hostで、://で区切っています。例:lumatutorialandroid://default -
「次へ」を選択します。
{modal="regular"}
-
新しいセッションを作成 モーダルダイアログで、次の操作を行います。
物理デバイスを使用している場合:
-
QR コードをスキャンを選択します。 アプリを開くには、物理的なデバイスのカメラを使用してQR コードをスキャンし、リンクをタップします。
{modal="regular"}
シミュレーターを使用している場合:
- 「リンクをコピー」を選択します。
-
を使用してディープリンクをコピーし、ディープリンクを使用して、シミュレーターでChromeを使用してアプリを開きます。
{modal="regular"}
Chromeで Luma Android に進むよう求められたら、続行を選択します。
-
-
アプリが読み込まれると、手順7に示すPINを入力するように求めるモーダルダイアログが表示されます。
{width="300"}
PINを入力し、Connectを選択します。
-
接続が成功した場合は、次のように表示されます。
-
アプリの上に表示されているAssuranceアイコン。
{width="300"}
-
Assurance UIに加えられた更新(以下を示す)。
-
アプリから送信されるエクスペリエンスイベント。
-
選択したイベントの詳細。
-
デバイスとタイムライン:
{modal="regular"}
-
-
課題がある場合は、 テクニカル および一般ドキュメント を確認してください。
拡張機能を確認
アプリが最新の拡張機能を使用しているかどうかを確認するには:
-
Configureを選択します。
-
拡張機能バージョンの を選択します。 -
「保存」を選択します。
{modal="regular"}
-
拡張機能バージョンを選択すると、使用可能な最新の拡張機能と、ご使用のバージョンのアプリで使用されている拡張機能の概要が表示されます。
拡張機能のバージョン(例:MessagingとOptimize)を更新するには、パッケージ依存関係 (例:AEPMessaging)からパッケージ(拡張機能)を選択し、コンテキストメニューから「パッケージを更新」を選択します。 Xcodeはパッケージの依存関係を更新します。
古い拡張機能が表示される場合は、プロジェクトの依存関係モジュールを更新する方法について、Android Studio ドキュメント を参照してください。
次:同意の実装