0

我正在尝试使用 Google 分析来跟踪我的应用程序速度,但我在网站上的应用程序速度下看不到任何内容。但我可以看到其他参数,如事件、崩溃和异常。以下是我用来发送事件计时的代码。

  self.endDate=[NSDate date];
  double timeDiff=[_startDate timeIntervalSinceDate:_endDate];
  NSLog(@"timeDiff----%f",timeDiff);
  if([[[GAI sharedInstance]defaultTracker] sendTimingWithCategory:category withValue:timeDiff withName:@"LoadTime" withLabel:category])
  {
    NSLog(@"Succesfully sent load time to GA");
  }

以下是控制台中打印的消息。GoogleAnalytics 2.0b4 -[GAIDispatcher dispatchComplete:withStartTime:withRetryNumber:withResponse:withData:withError:] (GAIDispatcher.m:415) 调试:成功发送命中 /GAIHit/p479(0 次重试)。 请帮我。

4

2 回答 2

0

这行得通。谷歌在文档中有错误。NSTimeInterval 是双倍的,他们的 SDK 需要整数。他们网站上的示例具有误导性。

- (void)onLoad:(NSTimeInterval *)loadTime {

    NSNumber* timeInterval = [NSNumber numberWithInt:((int) (loadTime * 1000))];
    [tracker sendTimingWithVariableCategory:@"resources"
                            withTimeInterval:timeInterval
                                    withName:@"high scores"
                                   withLabel:nil];
    ... // The rest of your onLoad: code.
}
于 2014-02-24T16:48:36.940 回答
0

在官方文档中,该示例使用的方法与您在此处使用的方法不同。

- (void)onLoad:(NSTimeInterval *)loadTime {
    [tracker sendTimingWithVariableCategory:@"resources"
                            withTimeInterval:loadTime
                                    withName:@"high scores"
                                   withLabel:nil];
    ... // The rest of your onLoad: code.
}

检查事项:

  • 确保您使用的是最新版本的SDK
  • 确保将 loadTime 转换为 NSTimeInterval,SDK 对类型有点严格。
于 2013-02-14T12:31:13.560 回答