本开发者指南将介绍如何使用 iOS 版 Google Analytics(分析)SDK v3 来实现自定义维度和指标。
概览
自定义维度可让您在 Google Analytics(分析)中将元数据关联到匹配、用户及会话,而自定义指标可以让您在 Google Analytics(分析)中创建和增加您自己的指标。
- 使用 Google Analytics(分析)网页界面配置自定义维度或指标。 了解如何配置自定义维度或指标(帮助中心)。
- 在应用中设置并发送自定义维度和指标值。
自定义维度和指标包含两个字段:
-
NSNumber
Index - 自定义维度或指标的索引。此索引值以 1 起始。 -
NSString
值 - 自定义维度或指标的值。对于指标而言,此值会被解析为整数(如果指标被配置为货币类型,则值会解析为固定位数的小数值)。
设置和发送值
要设置和发送自定义维度值,请使用以下代码:
// May return nil if a tracker has not yet been initialized with a property ID. id tracker = [[GAI sharedInstance] defaultTracker]; // Set the custom dimension value on the tracker using its index. [tracker set:[GAIFields customDimensionForIndex:1] value:@"Premium user"]; [tracker set:kGAIScreenName value:@"Home screen"]; // Send the custom dimension value with a screen view. // Note that the value only needs to be sent once, so it is set on the Map, // not the tracker. // Previous V3 SDK versions. // [tracker send:[[[GAIDictionaryBuilder createAppView] set:@"premium" // forKey:[GAIFields customDimensionForIndex:1]] build]]; // // SDK Version 3.08 and up. [tracker send:[[[GAIDictionaryBuilder createScreenView] set:@"premium" forKey:[GAIFields customDimensionForIndex:1]] build]];
自定义维度值可以随任何 Google Analytics(分析)命中类型发送,包括屏幕浏览、事件、电子商务交易、用户计时和社交互动。在数据处理过程中,自定义维度的范围定义将会决定哪些命中会与该维度值相关联。
要设置和发送自定义指标值,请使用以下代码:
// May return nil if a tracker has not yet been initialized with a property ID. id tracker = [[GAI sharedInstance] defaultTracker]; // Set the custom metric to be incremented by 5 using its index. [tracker set:[GAIFields customMetricForIndex:1] value:[[NSNumber numberWithInt:5] stringValue]]; [tracker set:kGAIScreenName value:@"Home screen"]; // Custom metric value is sent with this screen view. // [tracker send:[[GAIDictionaryBuilder createAppView] build]]; // Previous V3 SDK versions. [tracker send:[[GAIDictionaryBuilder createScreenView] build]]; // SDK Version 3.08 and up.
实现方面的注意事项
本节将简略介绍在实现自定义维度或指标的过程中需要注意的一些额外事项。
自定义维度的注意事项
范围为用户级或会话级的值将会应用于过去的命中
- 范围为用户级或会话级的自定义维度值将会应用于当前会话的所有匹配,包括之前的匹配。如果您不希望范围为用户级或会话级的自定义维度值应用到当前会话中之前的命中,请在向命中应用该值之前开始一个新会话。
- 例如,如果您使用“会员类型”作为用户级自定义维度,而某位用户在会话过程中升级了其会员类型,您就可能想要在设置新的自定义维度值之前开始一个新会话。这可确保升级之前的命中与旧的会员类型值相关联,而新的命中则与新的值相关联。
自定义维度和数据视图(配置文件)过滤器
- 即使一起发送的命中从数据视图(配置文件)中被滤除,用户或会话级自定义维度值仍然将与当前和/或将来会话中的所有命中相关联。
- 如果根据自定义维度值进行过滤,则系统会根据该自定义维度值的范围来过滤命中。 详细了解过滤器和自定义维度值如何在处理您数据的过程中相互影响。
自定义指标的注意事项
自定义指标值会在报告中汇总
- 与 Google Analytics(分析)中其他预定义的指标一样,自定义指标值会在报告中汇总。因此,如果要将您报告中的指标汇总值增加 1,您就要设置一个自定义指标值
1
。
自定义指标和数据视图(配置文件)过滤器
- 虽然自定义指标值一般可以视情况随时设置,但还是请避免对可能从数据视图(配置文件)中被滤除的命中设置自定义指标值。如果某次命中被数据视图(配置文件)过滤器所滤除,则所有关联的自定义指标值也将被滤除。 详细了解自定义维度和指标以及数据视图(配置文件)过滤器。
在使用自动屏幕衡量的情况下设置值
- 要将自定义维度值应用于通过自动屏幕衡量发送的屏幕浏览,请在视图控制器的
viewDidAppear:
方法执行期间设置该值。例如,您的视图控制器的.m
文件可能如下所示:
#import "myViewController.h" #import "GAI.h" @implementation myViewController -(void)viewDidAppear { id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; // Get the tracker object. [tracker set:[GAIFields customDimensionForIndex:1] value:@"premium"]; [super viewDidAppear:animated]; // Custom dimension value will be sent with the screen view. } // The remainder of the implementation is omitted.
请勿在值中发送任何个人身份信息