ios - 使用 Flurry Analytics 记录在选项卡中花费的时间

标签 ios flurry

我的应用程序中目前有多个选项卡。我想要做的是使用 Flurry Analytics 记录用户在所选选项卡中花费的时间。 通常我会在调用 viewDidAppear 时开始录制,并在调用 viewDidDisappear 方法时停止录制。

查看DidAppear

[Flurry logEvent:@"Tab_News" withParameters:nil timed:YES];

查看DidDisappear

[Flurry endTimedEvent:@"Tab_News" withParameters:nil];

我的问题是,当视频在选项卡中播放时,即使用户没有实际离开选项卡,也会调用 viewDidDisappearviewDidAppear 方法。

请帮助我提供有关如何规避此问题的建议。

最佳答案

创建一个名为 videoPlayingBOOL 来跟踪视频是否正在播放。当您播放视频时,将其设置为YES。在 viewDidDisappear 中,仅 endTimedEvent if (videoPlaying == NO)

这同样适用于viewDidAppear。如果videoPlaying == YESlogEvent,然后设置videoPlaying = NO

类似这样的事情:

- (void)viewDidLoad
{
    _videoPlaying = NO;
}

- (void)viewDidAppear
{
    if (_videoPlaying == YES) {
        _videoPlaying = NO;
    } else {
        [Flurry logEvent:@"Tab_News" withParameters:nil timed:YES];
    }
}

- (void)viewDidDisappear
{
   if (_videoPlaying == NO) {
      [Flurry endTimedEvent:@"Tab_News" withParameters:nil];
   }
}

- (void)playVideo
{
    _videoPlaying = YES;
    // Play video
}

关于ios - 使用 Flurry Analytics 记录在选项卡中花费的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17728304/

相关文章:

ios - 导出时 CALayer 未根据视频上的拖动位置正确设置

java - 如何使库在 Debug模式下充当无操作?

android - Android 中的 Flurry Analytics 教程?

android - flurry 记录 session 但不记录事件(android)

android - 如何在应用程序中使用flurry?

ios - 无法将 Flurry 添加到我的 Swift 项目

ios - 移动位于键盘下方的内容

ios - iOS中从中央服务器查询大量数据的建议

cocoa-touch - 在索引 501 处获取的对象有一个乱序的部分名称 'JOURNAL OF APPLIED PHYSICS. Objects must be sorted by section name'

ios - UIImage + SDWebImage不显示某些JPG文件。有时显示JPEG。 PNG工作