Adobe Analytics の追加

このレッスンでは、アプリで Adobe Analytics のトラッキングを有効にします。

Adobe Analytics は、顧客像を把握し、顧客インテリジェンスを活用してビジネスを導く力をユーザーに提供する、業界最先端のソリューションです。

拡張機能の追加 」と「Mobile SDK のインストール 」のレッスンでは、Adobe Analytics拡張機能をタグプロパティに追加し、サンプルアプリケーションに読み込みました。 後は、アプリケーション内の状態とアクションを追跡するコードを追加するだけです。

メモ

Adobe Experience Platform Launch は、データ収集テクノロジーのスイートとして Adobe Experience Platform に統合されています。 このコンテンツの使用中に注意が必要な、いくつかの用語の変更がインターフェイスにロールアウトされました。

  • platform launch(クライアント側)が tags になりました。
  • platform launchサーバー側が event forwarding になりました。
  • エッジ設定は datastreams になりました。

学習内容

このレッスンを最後まで学習すると、以下の内容を習得できます。

  • ライフサイクル指標が Adobe Analytics に送信されていることを確認する
  • 追加データを使用してアプリケーション内の状態を追跡するコードを追加する
  • 追加データを使用してアプリケーション内のアクションを追跡するコードを追加する

Analytics のタグには、多くの機能を実装できます。 このレッスンは完全なものではありませんが、お客様独自のアプリケーションで実装するために必要となる、主な技術の概要について明確に説明します。

前提条件

タグの設定 の節のレッスンを既に完了していること。 この節では、Analytics 拡張機能を追加し、トラッキングサーバー ID とレポートスイート ID を設定しました。

ライフサイクル指標と Adobe Analytics

ライフサイクル指標は、Experience Platform Mobile SDK を使用してアプリケーションで簡単に有効にできる、環境ベースの指標およびディメンションです。

プロパティにコア拡張機能を追加し、インターフェイスに表示されるモバイルインストール手順に従って、既にライフサイクル指標を有効にしています。これらの指標およびディメンション(アプリケーションのバージョン、アクションを実行したユーザー数、OS のバージョン、時間分割、前回使用からの日数など、環境およびアプリケーション固有の指標を含む)は、特に、アプリケーションから Analytics セグメントを作成してすべてのレポートに適用する際に、アプリケーションの分析に非常に役立ちます。指標の完全なリストは、ドキュメントで参照できます。

ACPCore ライブラリの読み込み

前のMobile SDK のインストールレッスンでは、AdobeCore ライブラリを BusBookingActivity ファイルで使用できるようにする import 文を追加しました。この同じライブラリは、このレッスンのアクティビティで追加の API 呼び出しに使用されます。次の演習では、API を使用して、AdobeCore ライブラリで定義されているアプリケーション内の状態(「trackState」)とアクション(「trackAction」)を追跡します。新しいExperience Cloudプラットフォーム Mobile SDK では、 trackState API と trackAction API が Analytics ライブラリから Core ライブラリに移動され、Adobe Analyticsトラッキング以外の目的でこれらの API を使用できるようになりました。

状態の追跡

アプリケーションには、ユーザーに提供する様々な画面のコンテンツが含まれる場合があります。これは、Web サイト上のページと同じです。Adobe Analytics では、これらの「ページビューヒット」を送信し、Web プロパティと同じレポートに表示するメソッドが用意されています。このメソッドは「trackState」と呼ばれます。

このチュートリアルでは、 trackState 呼び出しのコードを、アプリ内の 1 つの画面(ページ)にのみ配置します。 実際には、アプリケーション内の他のすべての画面と状態にこの画像を複製します。

以下に、このチュートリアルまたは独自のアプリケーションでコピー&ペーストできるドキュメントの構文とコード例を示します。

構文:

public static void trackState(final String state, final Map<String, String> contextData)

例:

HashMap cData = new HashMap<String, String>();
contextData.put("key", "value");
MobileCore.trackState("state name",contextData);

データを伴わない状態の追跡

  1. Android™ Studio でサンプルアプリを開き、BusBookingActivity に移動し、下部付近を下にスクロールして onResume 関数に移動します。

  2. trackState メソッド呼び出しを追加します。

  3. state name を「Booking Screen」に設定します。

  4. 追加のデータを追加する代わりに、API 呼び出しで null をプレースレースホルダーとして追加します。

  5. または、次の場所にコピー&ペーストします。

    MobileCore.trackState("Booking Screen", null);
    

基本的な trackState の呼び出し

trackState を検証するには、以下を実行します。

  1. プロジェクトを保存、ビルド、実行します。

  2. シミュレーターが実行され、アプリのホーム画面が開いたら、Android™ Studio Logcat デバッグコンソールを表示します。

  3. コンソールで pageName=Booking%20Screen を検索します。

  4. pageName 変数はBooking Screen に設定され、(エンコードされたスペースとして %20 を含む)他のカスタムデータペアは存在しないことに注意してください。技術的には、「ページ名」ではなく「状態名」を設定しますが、Web サイトの実装との一貫性を保つために、パラメーター名 pageName が使用されます。

    基本的な trackState の結果

データを伴う状態の追跡

  1. BusBookingActivity に戻り、import java.util.HashMap; ファイルの先頭の既存のインポートの下にインポートを追加します。

  2. onResume() 関数で、最後の演習での基本的な trackState 呼び出しをコメントアウト(または削除)します。

  3. trackState メソッドの新しい呼び出しを追加します。今回は、HashMap を作成して名前を付け、「put」コマンドを使用していくつかのキー/値のペアを組み込み、trackState の呼び出しでその HashMap を呼び出してデータを取得します。

  4. state name は「Booking Screen」のままにします。

  5. または、次の場所にコピー&ペーストします。

    HashMap cData = new HashMap<String, String>();
    cData.put("cd.section", "Bus Booking");
    cData.put("cd.subSection", "Booking");
    cData.put("cd.conversionType", "Landing");
    MobileCore.trackState("Booking Screen", cData);
    

    データを伴う trackState の呼び出し

データを伴う trackState を検証するには、以下を実行します。

  1. プロジェクトを再び保存、ビルド、実行します。

  2. シミュレーターが実行され、アプリのホーム画面が開いたら、Android™ Studio Logcat デバッグコンソールを表示します。

  3. subSection(またはコードに入力したキーや値のいずれか)を検索します。

  4. ここで、pageName が設定されている以外に、ヒット時に送信されたキーと値のペアもあることを確認します。

    trackState とデータ結果

メモ

Analytics の「prop と eVar」に詳しい人は、これらの変数名が SDK に含まれていないことに気が付くかもしれません。SDK からのすべてのキー/値データは contextData 変数として送信されるので、Analytics UI の処理ルールを使用して、prop または eVar(または他の変数)にマッピングする必要があります。

アクションの追跡

Web サイトでのページ読み込み以外のアクションの追跡と同様に、多くの場合、ユーザーがアプリケーション内でとるアクション(別の画面を読み込まないもののクリックなど)を追跡します。これは、このメソッドが trackAction と呼ばれる点を除いて、上で使用した trackState と同様に処理されます。

以下に、ドキュメントの構文とコード例を示します。

構文:

public static void trackAction(final String action, final Map<String, String> contextData) data;

例:

HashMap<String, String> contextData = new HashMap<String, String>();
contextData.put("key", "value");
MobileCore.trackAction("action taken", contextData);

目的地切り替えボタン操作の追跡

このサンプルバス予約アプリケーションでは、これら 2 つの値の間の矢印をクリックして、出発地と目的地を切り替えることができます。 Adobe Analytics でこの機能とのインタラクションを追跡することにしました。

目的地の切り替え

この切り替えコントロールは、サンプルプロジェクトの BusBookingActivity ファイルで制御します。この演習では、クリックするたびに trackAction ヒットを送信します。

trackAction コードの追加。

  1. Android™ Studio でサンプルプロジェクトを開き、BusBookingActivity に移動します。

  2. 「mBtnFlip.setOnClickListener」関数を 57 行目前後で見つけます。

  3. 必要に応じて関数を展開し、すべてのコードを表示します。

  4. onClick 関数で、flipSourceDesti() の呼び出しの下で、trackAction() の呼び出しを追加します。

  5. アクション名を「Flip Destination」に設定し、contextData パラメーターに「null」を追加します(現時点では、追加情報を送信する必要がないため)。

  6. 次のコードをコピー&ペーストできます。

    MobileCore.trackAction("Flip Destination", null);
    

関数は、以下のようになります。

目的地切り替えコード

trackAction コードを検証するには、以下を実行します。

  1. コードを追加したら、プロジェクトを保存し、実行してビルドします。

  2. ごみ箱アイコンをクリックして Logcat コンソールをクリアします。

  3. シミュレーターの「目的地の切り替え」矢印をクリックすると、コンソールに 1 つ以上の新しいリクエストが表示されます。

  4. Logcatでの Flip%20Destination の検索索。

  5. Action パラメーターと pev2 パラメーターの両方が Flip%20Destination(エンコードされたスペース付き)であることに注意してください。

  6. 同じ行のpe=lnk_o キー/値が、trackAction によってトリガーされた「カスタムリンク」ヒットであることに注意してください。

お疲れ様です。Analytics のレッスンが完了しました。もちろん、Analytics の実装を強化するためにできることは他にも多数ありますが、できれば残りのニーズに対処するためのコアスキルを習得できたと思います。

trackState と trackAction のその他の利点

この最後の演習では、trackState API と trackAction API を使用して、アプリケーションから Adobe Analytics にデータを送信しました。Experience Platformの Mobile SDK はタグに基づいているので、先ほど追加したコードを使用して、データ収集インターフェイスで実行できる操作は他にも多数あります。

タグでは、trackState API と trackAction API によってトリガーされるルールを作成し、他のAdobeソリューションや外部パートナーにリクエストするなど、追加のアクションを実行させることができます。

次:「Adobe Audience Manager の追加」>

このページ