本指南說明如何在 Android 應用程式中加入 Analytics (分析),以評估已命名畫面的使用者活動。如果您尚未下載應用程式,只是想瞭解 Analytics (分析) 的運作方式,請參閱我們的範例應用程式。
必要:最新版本:
設定專案
更新專案的 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。
新增畫面追蹤
每當使用者開啟或更改應用程式畫面時,系統就會在這裡傳送已命名的畫面資料檢視給 Analytics (分析)。程式碼應執行以下操作:
- 透過應用程式子類別提供共用追蹤器。
- 覆寫前景活動的回呼方法。
- 提供畫面的名稱並執行追蹤。
應用程式
您應該將 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;
}
}
活動或片段
開啟要追蹤的活動。您也可以追蹤 Fragment
,但必須確保其正確呈現螢幕檢視畫面。
覆寫您想追蹤的 Activity
或 Fragment
的 onCreate
方法,以取得共用的 Tracker
執行個體:
// Obtain the shared Tracker instance.
AnalyticsApplication application = (AnalyticsApplication) getApplication();
mTracker = application.getDefaultTracker();
覆寫適當的方法,例如 Activity
的 onResume
或 onPageSelected
,以供 ViewPager
在畫面變更時記錄。
Log.i(TAG, "Setting screen name: " + name);
mTracker.setScreenName("Image~" + name);
mTracker.send(new HitBuilders.ScreenViewBuilder().build());
為每個代表畫面的 Activity
或 Fragment
新增追蹤程式碼。如要區分 Analytics (分析) 中的應用程式畫面檢視畫面,請務必在每個 Activity
或 Fragment
內設定名稱。共用追蹤器記錄的所有活動都會傳送最新的畫面名稱,直到取代或清除 (設為 null
) 為止。
傳送活動
如要傳送事件,請在追蹤器上設定螢幕欄位值,然後傳送命中。
以下範例使用 HitBuilders.EventBuilder
傳送 Event
:
mTracker.send(new HitBuilders.EventBuilder()
.setCategory("Action")
.setAction("Share")
.build());
後續步驟
請參閱行動應用程式導入指南,瞭解如何使用 Google Analytics (分析) 評估使用者互動,並回答有關應用程式使用情況的問題。
查看其他設定選項,例如取樣、測試和偵錯,以及選擇不採用設定等。
如果您的應用程式需要收集廣告 ID,請為該應用程式啟用廣告功能。