我已经将v3集成到我的iOS应用程序中,现在我需要跟踪屏幕视图。下面是我在他们的网站上看到的内容:

下面是我使用的代码(手动屏幕测量):
+ (void)setupGoogleAnalytics
{
// User must be able to opt out of tracking
[GAI sharedInstance].optOut = NO;
// Initialize Google Analytics with a 120-second dispatch interval. There is a
// tradeoff between battery usage and timely dispatch.
[GAI sharedInstance].dispatchInterval = 120;
[GAI sharedInstance].trackUncaughtExceptions = YES;
[[GAI sharedInstance].logger setLogLevel:kGAILogLevelVerbose];
NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary];
[[GAI sharedInstance] trackerWithName:[infoDictionary objectForKey:@"CFBundleDisplayName"] trackingId:GOOGLE_ANALYTICS_TOKEN];
[[GAI sharedInstance].defaultTracker set:kGAIAppVersion value:[infoDictionary objectForKey:@"CFBundleShortVersionString"]];
}
+ (void)dispatchLogView:(NSString *)viewName Category:(NSString *)category action:(NSString *)action label:(NSString *)label value:(NSNumber*)value withProperties:(NSDictionary *)dictProp
{
NSMutableDictionary *event = [[GAIDictionaryBuilder createEventWithCategory:category
action:action
label:label
value:value] build];
[[GAI sharedInstance].defaultTracker send:event];
[[GAI sharedInstance].defaultTracker set:kGAIScreenName value:viewName];
[[GAI sharedInstance].defaultTracker set:kGAIDescription value:viewName];
[[GAI sharedInstance].defaultTracker send:[[GAIDictionaryBuilder createAppView] build]];
[[GAI sharedInstance] dispatch];
}SetupGoogleAnalytics在didFinishLaunchingWithOptions上被调用。在进行这些更改之后,我仍然在“屏幕视图”&“屏幕/会话”部分中看到零。老实说,我不知道我错过了什么让它正常工作。下面是我用来集成它的https://developers.google.com/analytics/devguides/collection/ios/v3/screens#manual的链接
以前有人遇到过同样的问题吗?有人对此有任何意见吗?
提前谢谢你的帮助..。
发布于 2014-06-26 05:28:45
为了能够跟踪上的屏幕,我尝试了以下方法。你可以试试看它是否适合你。
首先,确保按照Google:用于iOS v3的入门提供的指南正确配置了头文件和项目。
接下来,在您要跟踪的屏幕的viewDidLoad下面:-
- (void)viewDidLoad
{
[super viewDidLoad];
id tracker = [[GAI sharedInstance] defaultTracker];
[tracker set:kGAIScreenName value:@"Home Screen"];
[tracker send:[[GAIDictionaryBuilder createAppView] build]];
}在viewDidAppear:-下
-(void)viewDidAppear:(BOOL)animated{
self.screenName = @"Home Screen";
[super viewDidAppear:animated];
}这是没有错的。为了在Google上跟踪屏幕,self.screenName 必须将放在[super viewDidAppear:animated];之前。这是奇怪的,但它只能在一些特殊的情况下,我自己的项目。也许它也会在你的项目上起作用。
注意:viewDidAppear和viewDidload的屏幕名称应该是相同的。
发布于 2014-06-25 17:33:01
我就是这样做的,效果很好。对于我的每个ViewController的viewDidAppear:
id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker];
[tracker set:kGAIScreenName value:@"XXX view"];
[tracker send:[[GAIDictionaryBuilder createAppView] build]];我将其添加到AppDelegate的didFinishLauching中
[GAI sharedInstance].trackUncaughtExceptions = YES;
[[GAI sharedInstance].logger setLogLevel:kGAILogLevelVerbose];
[GAI sharedInstance].dispatchInterval = 20;
[[GAI sharedInstance] trackerWithTrackingId:@"UA-XXXXXXXX-X"];kGAILogLevelVerbose每20分钟记录一次它的活动发送到服务器,这样您就可以看到它。在您的情况下,这只是为了调试的目的,请确保在提交应用程序之前将其注释掉。
此外,您应该能够在实时screenView上看到在调试时有一个用户的屏幕。
祝好运。
发布于 2014-06-26 08:49:55
通用设置
摘自Google文档。您可能需要将其中一些添加到您的didFinishLaunchingWithOptions中
// Optional: automatically send uncaught exceptions to Google Analytics.
[GAI sharedInstance].trackUncaughtExceptions = YES;
// Optional: set Google Analytics dispatch interval to e.g. 20 seconds.
[GAI sharedInstance].dispatchInterval = 20;
// Optional: set Logger to VERBOSE for debug information.
[[[GAI sharedInstance] logger] setLogLevel:kGAILogLevelVerbose];
// Initialize tracker. Replace with your tracking ID.
[[GAI sharedInstance] trackerWithTrackingId:@"UA-XXXX-Y"];此外,您还有两个选项可以跟踪视图控制器事件。
选项-实现自动屏幕测量
让谷歌分析自动测量你的应用程序中的视图,让你的视图控制器扩展GAITrackedViewController。设置一个名为screenName的属性,其名称为要在报表中显示的屏幕名称。
#import "GAITrackedViewController.h"
@interface HomeViewController : GAITrackedViewController
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
self.screenName = @"Your screen name that should show up in Google Analytics";
}选项B -手动跟踪屏幕事件
手动为所需的每个ViewController触发一个事件。将以下内容添加到视图控制器的viewDidAppear中
id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker];
[tracker set:kGAIScreenName value:@"Your screen name that should show up in Google Analytics"];
[tracker send:[[GAIDictionaryBuilder createAppView] build]];https://stackoverflow.com/questions/24367213
复制相似问题