閉じる

Google Playと Google Analytics SDK for Android v3

デベロッパーコンソールに「Google Analyticsを利用しよう」みたいなメッセージが表示されるようになったけど、Google I/Oで発表された「Usage Metrics & Referral Tracking」の正体がこれって事かね?
「Google Analytics App Tracking SDK」を使って得たデータに Google playのデータが統合されるって事?
数字を見てみたくはあるけど、今のところ積極的に手を動かそうと言うモチベーションは高くない。

今回初めての利用なので、Google Analyticsへ行き、「申し込み」をクリック。
トラッキングの対象に「モバイルアプリ」を選択。
アカウント名は自分のニックネームでも記入しておく。
アプリ名はトラッキング対象となるアプリ名を記入。*1
業種*2 とレポートのタイムゾーンは適当に。
データ共有設定は全て無しが無難?
以上を設定したら「トラッキング IDを取得」をクリック。
国別の利用規約が出るので適当に。

管理画面に遷移すると SDKのダウンロードリンクがあるので Google Analytics Android SDKから GoogleAnalyticsServicesAndroid.zipをダウンロード。*3
アーカイブを展開してできてた libGoogleAnalyticsServices.jarを対象アプリの libsディレクトリへコピー。

とりあえず EasyTrackerという名前通りお手軽トラッキングシステムを使ってみる。
対象となる Activityの onStart/onStopをオーバーライドして EasyTrackerの該当メソッドを呼ぶだけ。*4

3630-0.java
class MyActivity extends Activity{
@Override
public void onStart() {
super.onStart();
EasyTracker.getInstance(getApplicationContext()).activityStart(this);
}

@Override
public void onStop() {
super.onStop();
EasyTracker.getInstance(getApplicationContext()).activityStop(this);
}
}

EasyTrackerに対する設定を XMLで定義する。*5 *6

3630-1.xml
<?xml version="1.0" encoding="utf-8" ?>
<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="TypographyDashes">
<!--Replace placeholder ID with your tracking ID-->
<string name="ga_trackingId">UA-xxxx-yy</string>
<!--Enable automatic activity tracking-->
<bool name="ga_autoActivityTracking">true</bool>
<!--Enable automatic exception tracking-->
<bool name="ga_reportUncaughtExceptions">true</bool>
</resources>

統計データをサーバへ通知する必要があるので AndroidManifest.xmlへネットへのアクセスと接続状態の取得権限を要求。

3630-2.xml
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

FYI : Google Analytics SDK for Android v3 (Beta) – Getting Started

ネットでは 2.xのコードが溢れているので、参考にするときは Google Analytics SDK for Android: Migrating to v3を参照する。

最後に Google Playのデータとリンクさせる。
Google Analyticsの管理画面からプロパティ設定をクリック。
Google Play のアプリのリンクを「オン」に変更。
対象アプリにチェックを入れる。
保存をクリック。

ここまでババッと書いてみたけど、自信は全くないので、しばし様子見。

2013/10/06追記

先日書いた方法で順調に記録は集まっている…が、生業にしているわけでもない自分には Google Analytics自体が情報過多かなぁ

Google Analyticsについても勉強の必要があるようだ。

ただ、情報が得られるのって Google Analytics SDKを導入した結果であって、Google Playのデータが Google Analyticsにて見られることのメリットってあまりない気がする。
アプリが Google Play経由でインストールされたか否かわかるぐらい?

フラグメントに関しては以下のようなコードで大丈夫かな。(activityStopに相当するようなコードはどうすればいいのか不明)

3630-3.java
@Override
public void onStart() {
super.onStart();
Tracker tracker = GoogleAnalytics.getInstance(
getApplicationContext()).getTracker(
getString(R.string.ga_trackingId));
tracker.send(MapBuilder.createAppView()
.set(Fields.SCREEN_NAME, this.getClass().toString())
.build());
}

2013/10/21追記

拙作アプリのようにインストール数*7 がたかだか 100前後だと実効インストール数に対する自分の割合が大きくなりすぎてしまうので自分は統計に含まないように細工をする。

具体的には特に機能を持たないダミーアプリを作成&インストールし、ソレがインストールされている場合は統計情報を出力しないようにした。

2015/01/06追記

結局の所、Google Playの統計情報だとアクティブなユーザーとインストールしたっきり死蔵されている状態のユーザーの区別が付かないのに対し、Analyticsを使うと大まかには区別が付くのが大きいかな。
4.0未満の切り捨て時期決定等に大きく効いてくる。


*1 後で変更可能

*2 選択しなくても大丈夫っぽい

*3 Downloads – Android – Google Analytics — Google Developersからダウンロードできる GoogleAnalyticsServicesAndroid_3.0.zipと同じ物。

*4 Fragmentについては調査中。

*5 独立したファイルにする必然性はないけど、analytics.xmlとでも名前を付けてまとめておいた方が管理しやすいかな。

*6 ga_trackingIdに関しては先に取得したトラッキング IDに書き換えること。

*7 現在のインストール数

コメントを残す

メールアドレスが公開されることはありません。必須項目には印がついています *

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)