本文档将介绍如何开始使用Android版Google Analytics(分析)SDK v4。
|
|
|
在实现SDK之前,请确保您已经有:
开始使用SDK有三个步骤:
本指南将会使用来自Google Play服务SDK中附带的Mobile Playground
样本应用的代码段。此项目的完整源代码可在以下位置获得:<android-sdk-directory>/extras/google/google_play_services/analytics/mobileplayground
。
完成上述步骤后,您将可以使用Google Analytics(分析)衡量以下内容:
更新您的AndroidManifest.xml
文件,向其中添加以下权限:
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
使用新版SDK时,开发者需要自行管理跟踪器。为避免过度计量指标,强烈建议您在Application
类中创建和管理跟踪器。
在下例中,我们创建了三个跟踪器,分别是APP_TRACKER
、GLOBAL_TRACKER
、ECOMMERCE_TRACKER
。它们在整个应用范围内的用途各不相同。
/** * Enum used to identify the tracker that needs to be used for tracking. * * A single tracker is usually enough for most purposes. In case you do need multiple trackers, * storing them all in Application object helps ensure that they are created only once per * application instance. */ public enum TrackerName { APP_TRACKER, // Tracker used only in this app. GLOBAL_TRACKER, // Tracker used by all the apps from a company. eg: roll-up tracking. ECOMMERCE_TRACKER, // Tracker used by all ecommerce transactions from a company. } HashMap<TrackerName, Tracker> mTrackers = new HashMap<TrackerName, Tracker>();
接下来,Application
类提供了一个方法来获取所请求的跟踪器,并在需要时创建跟踪器。请注意,您可以使用analytics.newTracker(PROPERTY_ID)
来根据PROPERTY_ID
创建跟踪器,也可以使用analytics.newTracker(R.xml.global_tracker)
来根据XML资源文件创建跟踪器。
synchronized Tracker getTracker(TrackerName trackerId) { if (!mTrackers.containsKey(trackerId)) { GoogleAnalytics analytics = GoogleAnalytics.getInstance(this); Tracker t = (trackerId == TrackerName.APP_TRACKER) ? analytics.newTracker(PROPERTY_ID) : (trackerId == TrackerName.GLOBAL_TRACKER) ? analytics.newTracker(R.xml.global_tracker) : analytics.newTracker(R.xml.ecommerce_tracker); mTrackers.put(trackerId, t); } return mTrackers.get(trackerId); }
您可以使用XML文件中定义的资源来管理配置设置。例如,如果您有一个全局跟踪器,则可以在项目的res/xml
目录中创建一个名为global_tracker.xml
的文件,并在其中添加以下资源:
<?xml version="1.0" encoding="utf-8"?> <resources> <integer name="ga_sessionTimeout">300</integer> <!-- Enable automatic Activity measurement --> <bool name="ga_autoActivityTracking">true</bool> <!-- The screen names that will appear in reports --> <screenName name="com.google.android.gms.analytics.samples.mobileplayground.ScreenviewFragment"> AnalyticsSampleApp ScreenView </screenName> <screenName name="com.google.android.gms.analytics.samples.mobileplayground.EcommerceFragment"> AnalyticsSampleApp EcommerceView </screenName> <!-- The following value should be replaced with correct property id. --> <string name="ga_trackingId">UA-XXXXXXX-Y</string> </resources>
您的lint检查工具可能会针对在跟踪ID中使用短划线符号('-')的情况向您发出警告。为此,您可以向<resources>
标记添加额外属性来消除此类警告:
<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="TypographyDashes">重要提示:不要对
ga_trackingId
字符串中的短划线进行编码。这样做会造成数据无法在报告中显示。
请参阅配置参数参考,以了解可用于对实现方案进行配置的参数的完整列表。
您的应用已设置完毕,可以向Google Analytics(分析)发送数据了。
要发送屏幕浏览数据,请在跟踪器上设置屏幕字段值,然后发送匹配:
// Get tracker. Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker( TrackerName.APP_TRACKER); // Set screen name. // Where path is a String representing the screen name. t.setScreenName(path); // Send a screen view. t.send(new HitBuilders.AppViewBuilder().build());
您还可以将Google Analytics(分析)用于其他众多用途,包括衡量广告系列、应用内付款和交易,以及用户互动事件。请参阅以下开发者指南,了解如何在您的实现方案中添加这些功能:
本页面中的内容已获得知识共享署名3.0许可,并且代码示例已获得Apache 2.0许可;另有说明的情况除外。有关详情,请参阅我们的网站政策。