AVPlayer 循环播放

遇到的项目需要从网络上获取音频的URL,循环播放,找了很长时间,很少这类文章,既然已经把这问题解决了,就记下来

引入 #import

@property (nonatomic, strong)AVPlayer *musicPlayer;

@property (nonatomic, strong)NSURL *musicUrl;

在请求音频成功的网络请求里

       NSURL* url  = [NSURLURLWithString:urlStr];

       self.musicUrl= url;

        AVPlayerItem* songItem = [[AVPlayerItemalloc]initWithURL:url];

        self.musicPlayer= [[AVPlayeralloc]initWithPlayerItem:songItem];

        self.musicPlayer.volume=0.5;

        [self.musicPlayer play];

在 viewDidLoad 添加通知

       [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(playbackFinished:) name:AVPlayerItemDidPlayToEndTimeNotification object:self.musicPlayer.currentItem];  

在接收通知的方法里添加

-(void)playbackFinished:(NSNotification*)noti{

    AVPlayerItem* songItem = [[AVPlayerItemalloc]initWithURL:self.musicUrl];

    self.musicPlayer = [[AVPlayer alloc]initWithPlayerItem:songItem];

    self.musicPlayer.volume = 0.5;

    [self.musicPlayer play];

}

你可能感兴趣的:(AVPlayer 循环播放)