Google Analyticsによる Flashトラッキング

Google Analyticsを使用した、Flash内のページトラッキング(遷移情報)を取得する方法を下記に紹介します。

1. HTMLに解析用 JavaScriptを追加

//gahost.js
 var gaJsHost = ("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src=´" + gaJsHost + "google-analytics.com/ga.js´ type=´text/javascript´%3E%3C/script%3E");

//tracker.js
 var pageTracker = _gat._getTracker("UA-XXXXXXX-1");
 pageTracker._initData();
 pageTracker._trackPageview();

2-1. Flashのボタンアクションに解析用コードを追加

//オンラインの場合のみ解析する
 if (_url.substr(0, 4)=="http") getURL("javascript:pageTracker._trackPageview('/flash/navigator/"+"xxx"+"');");

上記の例では、/flashという仮想のディレクトリを指定し、さらにナビゲーション部分のクリックであることから、/navigatorという括りに分けている。

ただし、例えば onPress時のアクションに2つ以上続けて getURL()指定をするとコンフクリクトを起こすようなので、下記のように onPress, onReleaseに分けるか、解析部分を関数化するとよい。

2-1a. onPress, onReleaseイベントに分ける

btn.onPress = function():Void {
  getURL("xxx.html");
 };

btn.onRelease = function():Void {
  if (_url.substr(0, 4)=="http") getURL("javascript:pageTracker._trackPageview('/flash/navigator/"+"xxx"+"');");
 }

2-1b. 解析部分を関数化する

function swfTracker(dir:String, name:String) {
  if (_url.substr(0, 4)=="http") getURL("javascript:pageTracker._trackPageview('/flash/"+dir+"/"+name+"');");
 }

btn.onPress = function():Void {
  getURL("xxx.html");
  swfTracker("navigator","xxx");
 };

解析コードを追加して24時間後に Google Analyticsでコンテンツサマリーの結果を見てみると、下記のようになっている。

URL           ページビュー  割合
 /flash/navigator/xxx  123        12.34%

【関連/参考サイト】

Google Analytics

Flash イベントをトラッキングするにはどうすればよいですか