AvPlayer当应用程序变为背景时暂停并播放问题

它的工作正常,如果应用程序只是变得不活跃/活跃(当一些警报来了,或通过双击主页button)

AVPlayer *播放器;

- (void)applicationWillResignActive:(UIApplication *)application { [player pause]; } - (void)applicationDidBecomeActive:(UIApplication *)application { [player play]; } 

如果应用程序转到后台(通过点击homebutton)并返回,则不会从暂停位置播放,而不是从不同的位置(有时从开始,有时从中间)播放。 可能是什么问题?

按以下步骤操作:

1)首先在appDelegate.h文件中添加float *time

2)在applicationWillResignActive获取current time

3)添加下面的方法

ApplicationWillResignActive方法pause播放器并save播放器的current time

 - (void)applicationWillResignActive:(UIApplication *)application { [player pause]; time = player.currentTime } 

现在在applicationDidBecomeActive添加seekToTime

 - (void)applicationDidBecomeActive:(UIApplication *)application { [player seekToTime:time toleranceBefore:kCMTimeZero toleranceAfter:kCMTimeZero]; [player play]; } 

你应该在应用程序进入后台之前调用这个方法。 [玩家暂停]; 或[玩家停止];