@kasumiiです。こんにちは。
Google Analyticsでウェブサイトのアクセス解析は今までやっていたのですが、iPhoneアプリ内でも使えるということを、実際に自分でアプリを作ってみるまで知らなかったので改めてメモメモ。
たとえばアプリ内のこういうデータを取得できます。
ページ(画面)ごとのアクセス数を記録
ボタンが押された回数を記録
どこの国・地域の人が使ってくれているか
iOSのバージョン
などなど。
この画面がよく見られているんだなーふむふむ。とか、ボタンを大きくしたら押される回数が増えた!とか、トラッキングしておくと使い勝手や売り上げアップにつながることも多そうです。
【参考】Titanium MobileでGoogle Analyticsを利用する – box box box
【参考】Google Analytics in Titanium Application | Appcelerator Titanium Tutorial
この記事の目次
Google Analyticsのアカウントを用意しておく
Google Analyticsにログインして、アプリのアクセス解析用のアカウント(というかプロファイル)を作成しておきます。
このとき生成される自分のトラッキングID(UA-XXXXXXXX-X)があとで必要になります。
Titanium-Google-Analytics を使う
【GitHub】rogchap/Titanium-Google-Analytics
Roger Chapmanさんの「Titanium-Google-Analytics」を使わせていただきます。ダウンロードした analytics.js を /Resources 以下に置きます。(app.jsと同階層)
/MyApp/Resources/analytics.js
以下のコードを app.js に挿入しますが、自分のトラッキングIDを入れるのを忘れずに。
// ------------------------------------ // Google Analytics 設定 // ------------------------------------ Ti.include("analytics.js"); // トラッキングID var analytics = new Analytics('UA-XXXXXXXX-X'); Titanium.App.addEventListener('analytics_trackPageview', function(e){ analytics.trackPageview(e.pageUrl); }); Titanium.App.addEventListener('analytics_trackEvent', function(e){ analytics.trackEvent(e.category, e.action, e.label, e.value); }); Titanium.App.Analytics = { trackPageview:function(pageUrl){ Titanium.App.fireEvent('analytics_trackPageview', {pageUrl:pageUrl}); }, trackEvent:function(category, action, label, value){ Titanium.App.fireEvent('analytics_trackEvent', {category:category, action:action, label:label, value:value}); } } analytics.start(10);
画面のアクセス数を計測する
たとえば設定画面のアクセス数をカウントしたい場合は、ウィンドウのfocusイベントで以下のようにすると、
win.addEventListener('focus', function(e){ Ti.App.Analytics.trackPageview('/view/settings'); });
/view/settings というURLのページにアクセスしたという記録が残るので「設定画面のアクセス数」がわかるようになります。引数として渡すデータは自分のわかりやすいものに変更可能です。
Google Analytics の「コンテンツ」→「サイト コンテンツ」→「すべてのページ」で、
ページ(URL) → /view/settings
ページビュー → 設定画面の表示回数
というデータが確認できます。
ボタンのクリックイベントを計測する
たとえばアプリ内にあるお気に入りボタンを押された回数を記録したい場合は、以下のようにすることでボタンのクリックイベントをトラッキングできます。
btn.addEventListener('click', function () { Ti.App.Analytics.trackEvent('Button','Click','Favorite',1); });
Google Analytics の「コンテンツ」→「イベント」のページで、
イベントカテゴリ → Button
イベントアクション → Click
イベントラベル → Favorite
とデータが計測されていればOK!
イベントとしてではなくページビューとしてボタンのクリック回数を記録したい場合は以下のように。/click や /view のようにディレクトリを分けておけば分析しやすいです。
btn.addEventListener('click', function () { Ti.App.Analytics.trackPageview('/click/favorite'); });
アプリのダウンロード数を計測する
最初にアプリを起動したときだけカウントしておけば、ダウンロード数の計測もできるよね。というアイデア。なるほどー!
【参考】[Titanium] アプリのダウンロード数をGoogle Analyticsで計測する – Sawalog
初回起動時に「アプリがDLされたよ!」という情報をGoogleAnalyticsに送信する。 「DLされたよフラグ」をTitanium.App.Propertiesを使って保存しておいて、次から起動しても送信しないようにする。
イベントの発火タイミングを工夫すればいろいろGoogle Analyticsは使えそうですね。
追記:サーバとの通信機能に影響が出る場合がある
コメントでアドバイスをいただいたので追記。
通信機能を使うアプリの場合、上記の方法で頻繁にイベント送信するとサーバ側と接続しにくくなることがあるらしい。その場合は以下のモジュール(有料)を使うといいそうです。
【iOS】Google Analytics SDK iPhone by Think Orange | Appcelerator
【Android】Google Analytics SDK Android by Think Orange | Appcelerator
@yagi_さん、ありがとうございますヽ(*´ω`*)ノ
Titanium mobile “early” Advent Calendar 2012
ところでこのブログ記事は@astronaughtsさん主催の、Titanium Mobileに関する小ネタを30日間みんなで書こう!というイベント「Titanium mobile “early” Advent Calendar 2012」の19日目として参加させていただきました。役に立つエントリーがたくさん集まっているので要チェックですぞ!w
コメントを残す