当应用程序进入后台时,AVPlayer暂停并播放问题

时间:2012-10-30 06:09:54

标签: iphone ios avplayer

如果应用程序变为非活动/活动状态(当出现某些警报或双击主页按钮时)它正常工作

AVPlayer *player;

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

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

如果应用程序进入后台(通过单击主页按钮)并返回,它不会从暂停位置播放,而是从不同点播放(有时从开始,有时从中间播放)。

2 个答案:

答案 0 :(得分:19)

按照以下步骤操作:

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

2)在current time

中取applicationWillResignActive

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];
}

答案 1 :(得分:1)

在应用程序进入后台之前,您应该调用此方法。 [玩家暂停]; 要么 [玩家停止];