本文档将大略介绍 iOS 版 Google Analytics(分析)SDK v2 的高级配置功能。
概览
iOS 版 Google Analytics(分析)SDK 使用两个类来管理实现的全局状态并将数据发送到 Google Analytics(分析)服务器。
GAI
- 一个单例,用于处理实现的全局状态,包括获取新的GAITracker
对象,以及应用级选择停用设置和调度设置。GAITracker
- 用于向 Google Analytics(分析)发送数据的类。可实例化多个跟踪器,每个唯一的媒体资源 ID 一个。
使用多个跟踪器
自 SDK 版本 2 起,您可以在单个实现中使用多个跟踪器,每个跟踪 ID 一个。所有跟踪器共用您的 GAI
单例所持有的全局状态。
在下面的示例中,系统会使用两个跟踪器(每个跟踪器都有自己唯一的媒体资源 ID),将一个屏幕视图发送到两个单独的媒体资源中:
#import "RootViewController.h" #import "GAI.h" @interface RootViewController () @end @implementation RootViewController { - (void)viewDidLoad { [super viewDidLoad]; // Send a screen view to the first property. id tracker1 = [[GAI sharedInstance] trackerWithTrackingId:@"UA-XXXX-Y"]; [tracker1 sendView:@"/HomeScreen"]; // Send another screen view to the second property. id tracker2 = [[GAI sharedInstance] trackerWithTrackingId:@"UA-XXXX-Z"]; [tracker2 sendView:@"Home"]; } @end
请注意,自动衡量功能(如自动屏幕和未捕获的异常衡量)仅使用一个跟踪器向 Google Analytics(分析)发送数据。如果您在使用这些功能,但又想使用其他跟踪器来发送数据,则需要采取手动方式。
作为参考,自动屏幕衡量会使用给定 GAITrackedViewController
的 tracker
属性中指定的跟踪器。未捕获异常衡量会使用 GAI
实例中指定的默认跟踪器。
默认跟踪器
虽然一个实现可能会使用多个跟踪器,但其在全局范围内只有一个默认跟踪器。检索到的第一个 Tracker
将成为默认跟踪器。
要获取默认跟踪器,请使用以下命令:
// Get default tracker. idmyDefault = [GAI sharedInstance].defaultTracker;
如需设置默认跟踪器,请使用:
// Get a new tracker. idnewTracker = [[GAI sharedInstance]trackerWithTrackingId:@"UA-NEW-TRACKING-ID"); // Set the new tracker as the default tracker, globally. [GAI sharedInstance].defaultTracker = newTracker;
采样
您可以启用客户端抽样,以限制向 Google Analytics(分析)发送的匹配数量。如果您的应用有大量用户,或因其他原因而向 Google Analytics(分析)发送大量数据,则启用抽样有助于确保报告不发生中断。
例如,要将客户端抽样率设为 50%,请使用以下代码:
// Set a sample rate of 50%. [tracker setSampleRate:50.0]; // Sample rate is a double.
应用级选择停用
您可以启用应用级选择停用标志,该标志将在整个应用中停用 Google Analytics(分析)。设置后,该标志将在整个应用的生命周期或重置前持续有效。
要获取应用级选择停用设置,请使用:
// Get the app-level opt out preference. if ([GAI sharedInstance].optOut) { ... // Alert the user they have opted out. }
如需设置应用级选择停用标志,请使用以下命令:
// Set the app-level opt out preference. [[GAI sharedInstance].setOptOut = YES];
测试和调试
iOS 版 Google Analytics(分析)SDK 提供了一种调试模式,该模式会输出有关将哪些数据发送到 Google Analytics(分析)的日志的实用信息。
// Enable debug mode. [GAI sharedInstance].debug = YES;