本指南介绍了如何将 Google Analytics(分析)添加到您的 Android 应用以衡量用户在已命名屏幕上的活动。如果您目前没有应用,而是仅仅想了解一下 Google Analytics(分析)的工作原理,请参阅我们的示例应用。
必需:最新版 Android Studio 和 Google Play 服务
请注意:Google Analytics(分析)可在不带 Google Play 服务的设备上使用并正常工作。在这种情况下,您仍需下载并使用 Google Play 服务 SDK,而 Google Analytics(分析)将会自动回退为使用本地数据发送。添加网络权限
更新您项目的 AndroidManifest.xml
文件,以使其包含 INTERNET
和 ACCESS_NETWORK_STATE
权限:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"适用于 Gradle 的 Google 服务插件会解析
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>
google-services.json
文件中的配置信息。通过更新您的顶级
build.gradle
和应用一级
build.gradle
文件来将该插件添加到您的项目中,具体操作如下所示:
- 将下面的依赖关系添加到您的项目一级
build.gradle
中:classpath 'com.google.gms:google-services:1.5.0-beta2'
- 将下面的插件添加到您的应用一级
build.gradle
中:apply plugin: 'com.google.gms.google-services'
现在,您需要为 Google Play 服务添加一个依赖关系。为此,请在您应用的 build.gradle
中添加以下内容:
compile 'com.google.android.gms:play-services-analytics:8.4.0'
获取配置文件
点击下面的按钮即可获取配置文件以将其添加到您的项目中。
该配置文件提供了您的应用的服务专用信息。要获取该文件,您必须为您的应用选择一个现有项目或新建一个项目。此外,您还需要为应用提供一个文件包名称。
注意:要获取该配置文件,您必须拥有 Google Analytics(分析)帐户和已注册的媒体资源。 获取配置文件将配置文件添加到项目中
将您刚刚下载的 google-services.json
文件复制到您 Android Studio 项目的 app/
或 mobile/
目录中。打开 Android Studio 的“终端”窗格:
$ mv path-to-download/google-services.json app/
添加屏幕跟踪
此时,每当用户打开或切换您应用上的屏幕时,您都会向 Google Analytics(分析)发送一次已命名的屏幕浏览。您的代码应能够:
- 通过 Application 子类提供共享的跟踪器。
- 替换前台活动的回调方法。
- 为屏幕提供名称并执行跟踪。
注册谷歌Play服务
<!--加载google play services--> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
Application声明:
public class AnalyticsApplication extends Application { private Tracker mTracker; /** * Gets the default {@link Tracker} for this {@link Application}. * @return tracker */ synchronized public Tracker getDefaultTracker() { if (mTracker == null) { GoogleAnalytics analytics = GoogleAnalytics.getInstance(this); // To enable debug logging use: adb shell setprop log.tag.GAv4 DEBUG mTracker = analytics.newTracker(R.xml.global_tracker); } return mTracker; } }
下载google-services.json 要注册谷歌账户,并开通GoogleAnalysis 服务。
在Activity 中使用:
package com.gasample; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.util.Log; import com.google.android.gms.analytics.HitBuilders; import com.google.android.gms.analytics.Tracker; public class MainActivity extends AppCompatActivity { private final String TAG="MainActivity"; private Tracker mTracker; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Obtain the shared Tracker instance. AnalyticsApplication application = (AnalyticsApplication) getApplication(); mTracker = application.getDefaultTracker(); } @Override protected void onResume() { super.onResume(); // Log.i(TAG, "Setting screen name: " + name); // mTracker.setScreenName("Image~" + name); // mTracker.send(new HitBuilders.ScreenViewBuilder().build()); //发送事件 mTracker.send(new HitBuilders.EventBuilder() .setCategory("Action") .setAction("onResume") .build()); } @Override protected void onStart() { super.onStart(); //发送事件 mTracker.send(new HitBuilders.EventBuilder() .setCategory("Action") .setAction("onStart") .build()); } }
可参考 https://segmentfault.com/a/1190000000498423