0

MPMoviePlayerViewControllerを使用してビデオファイルを再生できます。すべて正常に動作します。しかし、ホームボタンを押して今すぐアプリケーションを開くと、ビデオはスーパービューから削除されます。通知を受け取る方法を知っています。同じ動画を再開する方法を教えてください。

NSString* filePath = [[NSBundle mainBundle] pathForResource:@"adv" ofType:@"mp4"];
NSURL*  url = [NSURL fileURLWithPath:filePath];

_moviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:url];
[_moviePlayer.view setFrame:self.view.bounds];
[self.view addSubview:_moviePlayer.view];

上記のコードを使用してビデオを再生しています。ホームボタンを押してアプリケーションに戻ると、ビデオが消えてしまいます。読み込み中のみ表示されます。

4

2 に答える 2

5

[_moviePlayer play]アプリケーションが再びアクティブになったときに呼び出すことで、再生を再開できるはずです。

AppDelegate のapplicationDidBecomeActiveメソッドからコールバックするか、次のようにすることができます。

[[NSNotificationCenter defaultCenter] addObserverForName:UIApplicationDidBecomeActiveNotification object:[UIApplication sharedApplication] queue:[NSOperationQueue mainQueue] usingBlock:^(NSNotification *note) {
  [_moviePlayer play];
}];

通知用のオブザーバーを追加します (後で削除することを忘れないでください)。

于 2012-07-07T15:35:49.920 に答える
0

MPMoviePlayerPlaybackStateDidChangeNotification 通知に登録し、_moviePlayer.movi​​ePlayer プロパティの endPlaybackTime 値を確認します。

次に、次にプレーヤーが表示されるときに、initialPlaybackTime を以前の終了値に設定します。

于 2012-07-06T15:27:31.977 に答える