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