繁体   English   中英

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

[英]Recording time spend in a tab using Flurry Analytics

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

viewDidAppear

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

viewDidDisappear

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

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

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

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

这同样适用于viewDidAppear 如果videoPlaying == YES请不要记录logEvent ,然后设置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 6为目标,则可以执行以下操作:

- (void)viewDidLoad {
    [super viewDidLoad];
    [Flurry logEvent:@"Tab_News" withParameters:nil timed:YES];
}

- (void)dealloc {
    [Flurry endTimedEvent:@"Tab_News" withParameters:nil];
}

如果您在加载此ViewController时立即提出,则此方法有效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM