7

アプリが非アクティブ/アクティブになった場合(アラートが発生したとき、またはホームボタンをダブルクリックしたとき)は正しく機能しています

AVPlayer *player;

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

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

アプリがバックグラウンドに移動して(ホームボタンをクリックして)戻ってきた場合、アプリは別のポイントから(場合によっては開始から、場合によっては途中から)再生されるのではなく、一時停止した位置から再生されません。

4

2 に答える 2

22

以下の手順に従ってください。

1)最初にファイルを追加float *timeappDelegate.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];
}
于 2012-10-30T06:48:50.407 に答える
1

アプリケーションがバックグラウンドに移行する前に、このメソッドを呼び出す必要があります。[プレーヤーの一時停止]; または[プレイヤーストップ];

于 2012-10-30T11:08:08.763 に答える