Reputation: 78
I've embedded the YouTube video with no difficulties following method #2 of the YouTube API Blog:
http://apiblog.youtube.com/2009/02/youtube-apis-iphone-cool-mobile-apps.html
Is there any way to know when the video has finished playing (or when the user presses the Done button on the movie controller)?
For instance, say you wanted to play each video in a playlist without requiring the user to interact with the app. Is there any hook for when to start the next video?
Upvotes: 4
Views: 1545
Reputation: 747
Going by smoothlandon's post, this is what I implemented to determine if the YouTube/Safari window is still active. My App is really simple and it only has the main window, and a YouTube/Safari view that loads.
viewDidLoad:
activeWindow = [[UIApplication sharedApplication] keyWindow];
windowTimer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(checkForMedia) userInfo:nil repeats:YES];
- (void) checkForMedia{
newWindow = [[UIApplication sharedApplication] keyWindow];
if(newWindow == activeWindow){
NSLog(@"media is not playing");
}else{
NSLog(@"media is playing");
}
}
Upvotes: 0
Reputation: 7747
I am afraid you are out of luck. I have searched for the same thing around six months before and came to the conclusion that it is not possible with the current SDK. I have posted a similar question in stack overflow too.
https://stackoverflow.com/questions/4011796/notification-after-video-playback-in-mobile-safari
In general, if you need this kind of functionality, you have to use MPMoviePlayerCOntroller, not a web view.Even then, I don't think youtube URLs are supported by this class.
Upvotes: 1