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

iOSでアプリケーションのAssurance セッションを開始するには、0}SDKの一般的なインストール } に加えて、次のコードが必要です。

  1. Xcode のプロジェクトナビゲーターで Luma > Luma > SceneDelegate に移動します。

  2. 次のコードを 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

AndroidでアプリケーションのAssurance セッションを開始するには、0}SDKの一般的なインストール } に加えて、次のコードが必要です。

  1. Android Studio の Android ビューで、app/kotlin+java/com.adobe.luma.tutorial.android/LumaApplication に移動します。

  2. 次のコードを 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 を指定する必要があります。

iOS
  1. Xcode でプロジェクトを開きます。
  2. プロジェクト ナビゲータで [Luma] を選択します。
  3. Luma ターゲットを選択します。
  4. 署名と機能」タブを選択します。
  5. バンドル識別子 を定義します。

各バンドル ID は一意である必要があるので、unique バンドル ID を使用し、com.adobe.luma.tutorial.swiftui バンドル ID を置き換えてください。 通常は、バンドル ID 文字列(com.organization.brand.uniqueidentifier など)に逆 DNS 形式を使用します。 たとえば、このチュートリアルの完成バージョンでは com.adobe.luma.tutorial.swiftui を使用します。

Xcode 署名機能 {modal="regular"}

Android
  1. Android Studio でプロジェクトを開きます。
  2. ナビゲーターで build.gradle.kts (Module :app) を選択します。
  3. 必ず unique バンドル ID を使用し、com.adobe.luma.tutorial.androidnamespaceandroid 値を
  4. 必ず、同じ 一意の バンドル ID を使用し、com.adobe.luma.tutorial.androidapplicationIddefaultConfigandroid を置き換えてください

通常は、バンドル ID 文字列(com.organization.brand.uniqueidentifier など)に逆 DNS 形式を使用します。 たとえば、このチュートリアルの完成バージョンでは com.adobe.luma.tutorial.android を使用します。

Android署名機能 {modal="regular"}

ベース URL の設定

ディープリンクが確実に機能するようにベース URL を設定する必要があります。

iOS
  1. Xcode のプロジェクトに移動します。

  2. プロジェクト ナビゲータで [Luma] を選択します。

  3. Luma ターゲットを選択します。

  4. 情報」タブを選択します。

  5. ベース URL を追加するには、下にスクロールして URL タイプ を表示し、「+」ボタンを選択します。

  6. 識別子 を任意のバンドル識別子に設定し、任意の URL スキーム を設定します。

    assurance url {modal="regular"}

各バンドル 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
  1. Android Studio のプロジェクトの 0}Android} ビューに移動します。

  2. ナビゲーターで app/manifest/AndroidManifest.xml を選択します。

  3. 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を使用してセッションに接続できるようになりました。

iOS

Xcode で:

  1. Play を使用して、シミュレータまたは Xcode の物理デバイスでアプリを構築または再構築して実行します。

    必要に応じて、特に予期しない結果が発生した場合に、ビルドを クリーン する必要がある場合があります。 Xcode 製品 メニューから「ビルドフォルダーをクリーン」を選択します。

  2. Luma アプリが場所を使用することを許可する ダイアログで、「アプリの使用中に許可 を選択し す。

    {width="300"}

  3. Luma アプリ」が通知を送信したい ダイアログで、「許可」を選択します。

    {width="300"}

  4. 続行…」を選択し、アプリがアクティビティを追跡できるようにします。

    {width="300"}

  5. 「Luma アプリ」が他社のアプリや web サイトをまたいだアクティビティを追跡することを許可する」ダイアログで許可」を選択します。

    {width="300"}

  6. 続行」を選択します。

ブラウザーで以下を実行します。

  1. データ収集 UI に移動します。

  2. 左パネルから 0}Assurance} を選択します。

  3. 新規セッションを作成」を選択し、「ディープリンク接続」オプションを選択します。

  4. 開始 を選択します。

  5. などの セッション名 Luma Mobile App Sessionベース URL を指定します。これは、Xcode で入力した URL スキームであり、:// の後に続きます。例:lumatutorialswiftui://

  6. 次へ」を選択します。
    assurance 作成セッション {modal="regular"}

  7. 新規セッションを作成 モーダルダイアログで、次の操作を行います。

    物理デバイスを使用している場合:

    • QR コードをスキャン」を選択します。 アプリを開くには、物理デバイスのカメラを使用して QR コードをスキャンし、リンクをタップします。

      assurance qa コード {modal="regular"}

    シミュレーターを使用する場合:

    1. リンクをコピー を選択します。

    2. コピー を使用してディープリンクをコピーし、ディープリンクを使用してシミュレーターの Safari でアプリを開きます。

      Assurance コピーリンク {modal="regular"}

  8. アプリが読み込まれると、手順 7 に示すように、PIN を入力するよう求めるモーダルダイアログが表示されます。

    {width="300"}

    PIN を入力し、「接続」を選択します。

  9. 接続に成功した場合は、次のように表示されます。

    • アプリの上に浮かぶAssurance アイコン。

      {width="300"}

    • Assurance UI でのExperience Cloudの更新点は次のとおりです。

      1. アプリから発生するエクスペリエンスイベント。

      2. 選択したイベントの詳細。

      3. デバイスとタイムライン。

        assurance イベント {modal="regular"}

  10. 続行」を選択して、ホーム画面に移動します。

Android

Android Studio で以下を行います。

  1. 再生 を使用して、シミュレーターまたはAndroid Studio の物理デバイスでアプリを作成または再構築して実行します。

    必要に応じて、特に予期しない結果が発生した場合に、ビルドを クリーン する必要がある場合があります。 Android Studio の ビルド メニューから プロジェクトをクリーン を選択します。

  2. Luma Androidが通知を送信することを許可する ダイアログで、「許可」を選択します。

    {width="300"}

  3. 権限ダイアログを表示 を選択します。

    {width="300"}

  4. Luma Androidがこのデバイスの場所にアクセスすることを許可しますか?

    {width="300"}

    • 正確 を選択します。
    • アプリの使用中」を選択します。
  5. アプリの紹介画面に戻り、「デバイス設定を開く」を選択します。

  6. ロケーション権限 画面で、「常に許可」を選択します。 次に、「」を選択して、アプリの紹介画面に戻ります。

    {width="300"}

  7. 続行」を選択して、ホーム画面に移動します。

ブラウザーで以下を実行します。

  1. データ収集 UI に移動します。

  2. 左パネルから 0}Assurance} を選択します。

  3. 新規セッションを作成」を選択し、「ディープリンク接続」オプションを選択します。

  4. 開始 を選択します。

  5. などの セッション名 Luma Mobile App Session と、ベース URL を指定します。これは、Android Studio の android:schemeAndroidManifest.xmlandroid:host で定義した です(:// で区切ります)。例:lumatutorialandroid://default

  6. 次へ」を選択します。
    assurance 作成セッション {modal="regular"}

  7. 新規セッションを作成 モーダルダイアログで、次の操作を行います。

    物理デバイスを使用している場合:

    • QR コードをスキャン」を選択します。 アプリを開くには、物理デバイスのカメラを使用して QR コードをスキャンし、リンクをタップします。

      assurance qa コード {modal="regular"}

    シミュレーターを使用する場合:

    1. リンクをコピー を選択します。
    2. コピー を使用してディープリンクをコピーし、ディープリンクを使用してシミュレーターのChromeでアプリを開きます。

    Assurance コピーリンク {modal="regular"}

    Chromeで Luma Androidを続行 するように求められたら、続行 を選択します。

  8. アプリが読み込まれると、手順 7 に示すように、PIN を入力するよう求めるモーダルダイアログが表示されます。

    {width="300"}

    PIN を入力し、「接続」を選択します。

  9. 接続に成功した場合は、次のように表示されます。

    • アプリの上に浮かぶAssurance アイコン。

      {width="300"}

    • Assurance UI でのExperience Cloudの更新点は次のとおりです。

      1. アプリから発生するエクスペリエンスイベント。

      2. 選択したイベントの詳細。

      3. デバイスとタイムライン。

        assurance イベント {modal="regular"}

課題が発生した場合は、 技術ドキュメントおよび 一般ドキュメントを確認してください。

拡張機能の検証

アプリが最新の拡張機能を使用しているかどうかを確認するには:

  1. 設定 を選択します。

  2. 123 拡張機能バージョン の場合は 追加 を選択します。

  3. 保存」を選択します。

    拡張機能のバージョンの設定 {modal="regular"}

  4. 123 拡張機能のバージョン を選択すると、使用可能な最新の拡張機能と、お使いのバージョンのアプリで使用されている拡張機能の概要が表示されます。

iOS

拡張機能のバージョン {modal="regular"}

拡張機能のバージョン(例:Messaging および Optimize)を更新するには、パッケージの依存関係 (例:AEPMessaging)からパッケージ(拡張機能)を選択し、コンテキストメニューから「パッケージを更新」を選択します。 Xcode はパッケージの依存関係を更新します。

Android

拡張機能のバージョン {modal="regular"}

古い拡張機能が表示される場合は、Android Studio のドキュメントでプロジェクトのディペンデンシーモジュールを更新する方法を参照してください。

NOTE
開発環境で拡張機能(パッケージ)を更新したら、現在のセッションを閉じて削除し、 セッションへの接続および 拡張機能の検証のすべての手順を繰り返して、Assuranceが新しいAssurance セッションで正しい拡張機能を適切にレポートしていることを確認します。
SUCCESS
これで、チュートリアルの残りの部分でAssuranceを使用するようにアプリを設定しました。
Adobe Experience Platform Mobile SDKの学習にご協力いただき、ありがとうございます。 ご不明な点がある場合や、一般的なフィードバックをお寄せになる場合、または今後のコンテンツに関するご提案がある場合は、この Experience League Community Discussion の投稿でお知らせください

次のトピック:同意の実装

recommendation-more-help
9fed61f5-c338-47ad-8005-0b89a5f4af8b