3254523 3254523 - 8 months ago 71
iOS Question

How to detect when an AVPlayerItem is finished playing?

I've been looking through the

docs and there doesn't seem to be any callbacks for when the item is finished playing. I was hoping that there would be some sort of delegate callback that we can utilize or that
would provide a custom action for us to write.

How can i figure out a way to detect when AVPlayer has finished playing an item?


It uses NSNotification to alert when playback is finished.

Register for the notification:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(itemDidFinishPlaying:) name:AVPlayerItemDidPlayToEndTimeNotification object:playerItem];

Method to call when done:

-(void)itemDidFinishPlaying:(NSNotification *) notification {
    // Will be called when AVPlayer finishes playing playerItem