我正在开发一款iPhone应用程序,如果用户观看了完整视频,其功能就是给予用户信任。
但我不知道如何检测用户是否观看完整视频?
答案 0 :(得分:1)
没有完美的方法可以找到它。 你需要为此制定逻辑。但在每种情况下都不是100%真实。下面是我在我的一个项目中使用的逻辑。但正如我所说,它并不完美。
您需要查找视频的总持续时间。
MPMoviePlayerController *player;
float length = player.duration;
之后你需要为这段时间制作一个计时器。
NSTimer *checkForFullWatchVideoTimer = [NSTimer scheduledTimerWithTimeInterval:length
target:self
selector:@selector(videoDidFinish)
userInfo:nil
repeats:NO];
现在,如果此计时器起火,则表示用户已观看完整视频。
-(void) videoDidFinish{
// User has watch complet video.
}
如果在该事件之前用户关闭此电影播放器控制器,则需要使用invalidate方法删除此计时器。
[checkForFullWatchVideoTimer invalidate];
这是我实施的方式。但是如果用户在电影播放器控制器中寻找计时器,则该逻辑将不起作用。您可以通过使用AVPlayer控制器实现此目的。我希望这对你有用。