このガイドでは、アナリティクスを Android アプリに追加して、名前付きのスクリーンに対するユーザー行動を測定する方法について説明します。アプリを作成する前にアナリティクスの仕組みを確認するには、サンプルアプリをご覧ください。
必須: 最新版の Android Studio および Google Play 開発者サービス
プロジェクトを設定する
プロジェクトの 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 を収集する必要がある場合は、アプリの広告向け機能を有効にします。