このガイドでは、Android アプリにアナリティクスを追加して、名前付きの画面に対するユーザー アクティビティを測定する方法について説明します。アプリケーションをまだお持ちでなく、アナリティクスの仕組みを確認したい場合は、サンプル アプリケーションをご覧ください。
必須: 以下の最新バージョン
プロジェクトを設定する
プロジェクトの AndroidManifest.xml
ファイルを更新して、INTERNET
権限と ACCESS_NETWORK_STATE
権限を含めます。
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.analytics">
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<application android:name="AnalyticsApplication">
...
</application>
</manifest>
プロジェクト レベルの build.gradle
に次の依存関係を追加します。
dependencies {
// ...
classpath 'com.google.gms:google-services:3.0.0'
}
Google Play 開発者サービスに対する次の依存関係を app/build.gradle
に追加します。
dependencies {
// ...
compile 'com.google.android.gms:play-services-analytics:10.2.4'
}
global_tracker.xml の作成
次の内容で app/src/res/xml/global_tracker.xml
ファイルを作成します。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="ga_trackingId" translatable="false">${YOUR_TRACKING_ID}</string>
</resources>
${YOUR_TRACKING_ID}
は実際のトラッキング ID に置き換えてください。
スクリーン トラッキングを追加する
ユーザーがアプリの画面を開いたり変更したりするたびに、名前付きのスクリーン ビューをアナリティクスに送信します。コードで次の処理を行います。
- Application サブクラスを使用して共有トラッカーを指定する。
- フォアグラウンド Activity のコールバック メソッドをオーバーライドする。
- スクリーンの名前を設定して、トラッキングを実行する。
アプリケーション
Application
をサブクラス化して、アプリのトラッカーを返すヘルパー メソッドを提供する必要があります。</>
/*
* Copyright Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.google.samples.quickstart.analytics;
import android.app.Application;
import com.google.android.gms.analytics.GoogleAnalytics;
import com.google.android.gms.analytics.Tracker;
/**
* This is a subclass of {@link Application} used to provide shared objects for this app, such as
* the {@link Tracker}.
*/
public class AnalyticsApplication extends Application {
private static GoogleAnalytics sAnalytics;
private static Tracker sTracker;
@Override
public void onCreate() {
super.onCreate();
sAnalytics = GoogleAnalytics.getInstance(this);
}
/**
* Gets the default {@link Tracker} for this {@link Application}.
* @return tracker
*/
synchronized public Tracker getDefaultTracker() {
// To enable debug logging use: adb shell setprop log.tag.GAv4 DEBUG
if (sTracker == null) {
sTracker = sAnalytics.newTracker(R.xml.global_tracker);
}
return sTracker;
}
}
Activity または Fragment
トラッキングする Activity を開きます。Fragment
をトラッキングすることもできますが、必ずスクリーン ビューを正しく表していることを確認してください。
トラッキングする Activity
または Fragment
の onCreate
メソッドをオーバーライドして、共有 Tracker
インスタンスを取得します。
// Obtain the shared Tracker instance.
AnalyticsApplication application = (AnalyticsApplication) getApplication();
mTracker = application.getDefaultTracker();
適切なメソッド(Activity
の onResume
や、ViewPager
の onPageSelected
など)をオーバーライドして、画面が変更されたときにログに記録します。
Log.i(TAG, "Setting screen name: " + name);
mTracker.setScreenName("Image~" + name);
mTracker.send(new HitBuilders.ScreenViewBuilder().build());
スクリーンを表すすべての Activity
または Fragment
にトラッキング コードを追加します。アナリティクスでアプリのスクリーン ビューを区別する場合は、すべての Activity
または Fragment
内に名前を設定してください。共有トラッカーに記録されたすべてのアクティビティは、置換または消去(null
に設定)されるまで、最新のスクリーン名を送信します。
イベントを送信する
イベントを送信するには、トラッカーのスクリーン フィールドの値を設定してから、ヒットを送信します。
次の例では、HitBuilders.EventBuilder
を使用して Event
を送信しています。
mTracker.send(new HitBuilders.EventBuilder()
.setCategory("Action")
.setAction("Share")
.build());
次のステップ
モバイルアプリ実装ガイドを読み、Google アナリティクスを使ってユーザーの操作を測定したり、アプリの使用状況に関する質問に答えたりする方法を確認します。
サンプリング、テスト、デバッグ、オプトアウト設定など、追加の構成オプションを確認する。
アプリで広告 ID を収集する必要がある場合は、アプリの広告機能を有効にします。