4

AVPlayer を使用してオンライン ムービーを再生しています。正常に動作しています。問題は、映画の再生が始まる前にビューから飛び出すと、バックグラウンド プロセスが実行され続けることです。ムービーが読み込まれると、バックグラウンドで再生が開始されます。

viewWillDisappear でプレーヤーを解放しようとしました。しかし、うまくいきません。

- (void)viewWillDisappear:(BOOL)animated
{
    if (self.player.currentItem.status != AVPlayerItemStatusReadyToPlay) 
    {
        [self.player.currentItem removeObserver:self forKeyPath:kRateKey];
        [self.player.currentItem removeObserver:self forKeyPath:kStatusKey];
        [self.player.currentItem removeObserver:self forKeyPath:kTimedMetadataKey];
    }
    [self.player pause];
    [self.player release];
    [self.playerLayerView release];

    [super viewWillDisappear:animated];
}

誰でも助けてもらえますか?前もって感謝します

4

2 に答える 2

0

これは役立つかもしれません..

    if (self.player.currentItem.playbackLikelyToKeepUp == 1 ) {

    NSLog(@"Ready To Play");
    [self.player play];


    }else{

    NSLog(@" Show HUD Buffering...");

    [self.player pause];

    }
于 2013-04-10T12:56:19.793 に答える
0
- (void)viewWillDisappear:(BOOL)animated
        if (self.player.playing==YES) {
            [self.player stop];
            self.player=nil;
        }
    }
于 2011-07-04T09:18:11.080 に答える