Adobe Flex の設定

このドキュメントでは、Adobe Flex 開発環境で Adobe Flash 用に Google Analytics トラッキングを設定するために知っておく必要のある事項について説明します。

トラッキング ライブラリの取得

http://code.google.com/p/gaforflash/downloads/list からコード(ZIP 形式)をダウンロードします。readme.txt ファイルの指示に従って Flex コンポーネントをインストールします。アナリティクスの Flash コンポーネントとは異なり、ダウンロード ファイルに含まれるライブラリ ファイルは /lib/analytics_flex.swc のみです。

プロジェクトへのコードの追加

プロジェクトでトラッキング コードを使用する前に、プロジェクト リソースとしてダウンロードした SWC ファイルをリンクする必要があります。

  1. [Project] -> [Properties] を選択します。プロジェクトの [Properties] ダイアログ ボックスが表示されます。
  2. [Flex ビルドパス] をクリックし、[ライブラリ パス] タブを選択します。
  3. [Library Path] ペインで [Add SWC...] をクリックします。[Add SWC] ダイアログ ボックスが表示されます。
  4. Google Analytics API を解凍した場所に移動し、lib/analytics.swc ファイルを選択して [OK] をクリックします。
    または、analytics.swc ファイルを Flex プロジェクトの /libs ディレクトリにドロップします。

Flex MXML コンポーネントの例

次の例は、MXML ファイル内でボタンのトラッキングを設定する方法を示しています。MXML コンポーネントを初期化するには、次の手順を実行します。

  • XML 名前空間パラメータを設定します。トラッキング オブジェクトの XML 名前空間パラメータを xmlns:analytics="com.google.analytics.components.*" に設定します。
  • オブジェクト名を設定します。次の例では、id パラメータが tracker に設定されています。
  • ウェブ プロパティ ID の account パラメータを使用します。ウェブ プロパティ ID は、Flash コンテンツに対するアクティビティをトラッキングしてアナリティクス アカウントの適切なビュー(旧プロファイル)に配信するために使用される一意の文字列です。
  • mode パラメータでトラッキング モードを設定します。MXML ファイルを作成していて、トラッキングを簡単に実装する場合は、パラメータに Bridge を使用します。NDK3 でのコーディングに慣れている場合は、AS3 を使用してください。AS3 モードでは、Google アナリティクスのすべてのトラッキング クラスをインポートでき、そこから独自のトラッキング オブジェクトを作成して設定できます。
  • visualDebug パラメータでデバッグモードを設定するtrue を使用して、プログラムのデバッグと検証を有効にします。それ以外の場合は、本番環境で使用する場合は false に設定します。

この例では、ボタン mybutton がステージに追加されています。Flex トラッキング コンポーネントは、tracker という名前でインスタンス化され、そのパラメータで構成されます。最後に、クリック イベント onButtonClickmybutton に追加されます。ボタンがクリックされると、仮想ページビュー /hello world が 1 つ増えます。

<?xml version="1.0" encoding="utf-8"?>
<mx:Application
    xmlns:mx="http://www.adobe.com/2006/mxml"
    layout="absolute" width="800" height="600"
    >

    <mx:Script>
            public function onButtonClick():void
            {
                tracker.trackPageview( "/hello world" );
            }
    </mx:Script>

    <analytics:FlexTracker
        xmlns:analytics="com.google.analytics.components.*"
        id="tracker"
        account="UA-111-222"
        mode="AS3"
        visualDebug="false"
     />

    <mx:Button id="mybutton" label="hello world" click="onButtonClick()" />

</mx:Application>

Flex ActionScript 3 の例

より複雑な状況では、ネイティブの Eventarc 3 トラッキング クラスを NDK リソース ファイルから直接呼び出すこともできます。この例も MXML ファイルですが、トラッキングのインスタンス化はすべて <MX:script> タグで行われます。同じ手順で、他の NDK 3 プロジェクトにトラッキングを追加できます。

この例では、ボタン mybutton がステージに追加されています。スクリプトタグでは、次の 2 つのライブラリがインポートされます。

com.google.analytics.GATracker; //this is the actual tracking class
com.google.analytics.AnalyticsTracker; //this is an interface that the GATracker class implements

ライブラリのインポート後、トラッキング変数 tracker が作成されます。アプリがこのステージに追加されると、onComplete が呼び出され、トラッキング オブジェクトがインスタンス化されます。GATracker オブジェクトのインスタンスを作成するために必要な 4 つのパラメータは次のとおりです。

  • 現在の表示オブジェクトを参照する。以下の例では、this は表示オブジェクトを参照しています。
  • ウェブ プロパティ ID。ウェブ プロパティ ID は、Flash コンテンツに対するアクティビティをトラッキングしてアナリティクス アカウントの適切なビュー(旧プロファイル)に配信するために使用される一意の文字列です。
  • トラッキング モード:有効なパラメータは Bridge または AS3 です。
  • デバッグモード。本番環境で使用する場合は debugfalse に設定し、検証とトラブルシューティングの場合は true に設定します。

最後に、myButton クリック メソッドで、onButtonClick 関数がトラッキング オブジェクトで仮想ページビューをトラッキングします。

このアプリケーションを実行すると、ユーザーがボタンをクリックするたびに "hello world" の仮想ページ ビューが Google Analytics トラッキング サーバーに送信されます。

<?xml version="1.0" encoding="utf-8"?>
<mx:Application
    xmlns:mx="http://www.adobe.com/2006/mxml"
    layout="absolute"
    width="800" height="600"
    addedToStage="onComplete()"
    >
    <mx:Script>
        <![CDATA[
            import com.google.analytics.GATracker;
            import com.google.analytics.AnalyticsTracker;

            public var tracker:AnalyticsTracker;

            private function onComplete():void
            {
                tracker = new GATracker( this, "UA-111-222", "AS3", false );
            }

            public function onButtonClick():void
            {
                tracker.trackPageview( "/hello/world" );
            }

        ]]>
    </mx:Script>

    <mx:Button id="mybutton" label="hello world" click="onButtonClick()" />

</mx:Application>