0

我正在尝试让 Google Analytics 与我的应用程序一起工作。

我有

将官方的 Google Analytics SDK 3 集成到我的项目中

AppDelegate.m

// Initialize the default tracker. After initialization, [GAI sharedInstance].defaultTracker
// returns this same tracker.
// TODO: Replace the tracker-id with your app one from https://www.google.com/analytics/web/
id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"XX-XXXXX-X"];

// Provide unhandled exceptions reports.
[GAI sharedInstance].trackUncaughtExceptions = YES;

// Enable Remarketing, Demographics & Interests reports. Requires the libAdIdAccess library
// and the AdSupport framework.
// https://developers.google.com/analytics/devguides/collection/ios/display-features
tracker.allowIDFACollection = YES;

然后在 WordPressViewController.m

    - (void) viewDidLoad
{

    [super viewDidLoad];
   id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker];

NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:
                        @"appview", kGAIHitType, @"Home Screen", kGAIScreenName, nil];
[tracker send:params];

位码也不能以某种方式与最新的 sdk 一起工作(不知道这对跟踪器工作是否重要)

但是,当我运行应用程序转到屏幕时,实时数据不显示任何内容。

4

3 回答 3

0

实时数据终于奏效了。

改变了

[GAI sharedInstance].dispatchInterval = 20;

[GAI sharedInstance].dispatchInterval =1个;

于 2015-10-20T09:07:03.033 回答
0

在 appDelegate didFinishLaunchingWithOptions方法中设置。

[[GAI sharedInstance] setDispatchInterval:kGaDispatchPeriod]; // set your period .

[[GAI sharedInstance] setOptOut:NO];

//[[[GAI sharedInstance] logger] setLogLevel:kGAILogLevelVerbose];

[[GAI sharedInstance] setTrackUncaughtExceptions:YES];

id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:kGaPropertyId]; //// Placeholder property ID.

[tracker setAllowIDFACollection:NO];

GAITracker在 appDelegate 中创建属性

@property (strong, nonatomic) id<GAITracker> tracker;

并在 viewDidAppear 的视图控制器中设置..

id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker];
[tracker set:kGAIScreenName value:NSStringFromClass([self class])];
[tracker send:[[GAIDictionaryBuilder createScreenView] build]];

希望对您有所帮助。

于 2015-10-19T12:01:42.647 回答
0

我是一家移动开发公司的 Google SME(主题专家),我很高兴为确保我们的实施正确无误而使自己遇到了许多令人头疼的问题。

话虽如此,您没有看到任何将调度间隔设置为 20 的实时分析数据报告的原因是因为这意味着您的数据每 20 分钟进行一次批量报告;这是一个太长的时间窗口,无法显示在实时数据中,在较小的视图上限制为 60 秒,在较大的视图上限制为 30 分钟。

话虽如此,调度的数据并没有出现在调度时的实时数据中。相反,该表将仅反映事件/屏幕视图发生的时间 - 没有指示数据何时分派。

从理论上讲,您可以在原始设置上等待 20 分钟,并且假设您正确配置了所有内容,您会看到至少有一些数据显示在实时事件的较大时间窗口的末尾附近,但大部分活动仅仅因为它发生的时间超过 30 分钟,就会“丢失”。

要真正测试这一点,请尝试执行以下操作(即时调度): 将调度间隔设置为 0 - 这将触发事件和屏幕立即报告。您应该仅出于调试目的执行此操作,或者如果您需要即时调度(Google 文档不建议即时调度,因为它会更快地耗尽电池寿命)

请记住,“实时”数据只会在最后一次调度调用后的几秒钟内显示。我发现一些非官方资源声称在最后一次发送后可能需要一分钟,所以耐心是关键。

于 2017-03-18T17:54:36.013 回答