diff --git a/Example/KRVideoPlayer/FirstViewController.m b/Example/KRVideoPlayer/FirstViewController.m index 5cd816e..7cce97f 100644 --- a/Example/KRVideoPlayer/FirstViewController.m +++ b/Example/KRVideoPlayer/FirstViewController.m @@ -9,7 +9,7 @@ #import "FirstViewController.h" #import "KRVideoPlayerController.h" -@interface FirstViewController () +@interface FirstViewController () @property (nonatomic, strong) KRVideoPlayerController *videoController; @@ -46,6 +46,7 @@ - (void)playVideoWithURL:(NSURL *)url if (!self.videoController) { CGFloat width = [UIScreen mainScreen].bounds.size.width; self.videoController = [[KRVideoPlayerController alloc] initWithFrame:CGRectMake(0, 0, width, width*(9.0/16.0))]; + self.videoController._delegate = self; __weak typeof(self)weakSelf = self; [self.videoController setDimissCompleteBlock:^{ weakSelf.videoController = nil; @@ -55,4 +56,8 @@ - (void)playVideoWithURL:(NSURL *)url self.videoController.contentURL = url; } +- (void)videoPlaybackEnded +{ + NSLog(@"Video Playing Completed"); +} @end diff --git a/Example/KRVideoPlayer/Info.plist b/Example/KRVideoPlayer/Info.plist index 146782c..5130282 100644 --- a/Example/KRVideoPlayer/Info.plist +++ b/Example/KRVideoPlayer/Info.plist @@ -22,6 +22,11 @@ 1 LSRequiresIPhoneOS + NSAppTransportSecurity + + NSAllowsArbitraryLoads + + UILaunchStoryboardName LaunchScreen UIMainStoryboardFile diff --git a/Pod/Classes/KRVideoPlayerController.h b/Pod/Classes/KRVideoPlayerController.h index bfaf415..e3ef849 100644 --- a/Pod/Classes/KRVideoPlayerController.h +++ b/Pod/Classes/KRVideoPlayerController.h @@ -8,8 +8,13 @@ @import MediaPlayer; +@protocol KRViedoPlayerDelegate +- (void)videoPlaybackEnded; +@end + @interface KRVideoPlayerController : MPMoviePlayerController +@property (assign, nonatomic) id _delegate; @property (nonatomic, copy)void(^dimissCompleteBlock)(void); @property (nonatomic, assign) CGRect frame; diff --git a/Pod/Classes/KRVideoPlayerController.m b/Pod/Classes/KRVideoPlayerController.m index 1eff4fd..6a7af7c 100644 --- a/Pod/Classes/KRVideoPlayerController.m +++ b/Pod/Classes/KRVideoPlayerController.m @@ -39,6 +39,7 @@ - (instancetype)initWithFrame:(CGRect)frame self.videoControl.frame = self.view.bounds; [self configObserver]; [self configControlAction]; + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(moviePlaybackDidFinish) name:MPMoviePlayerPlaybackDidFinishNotification object:nil]; } return self; } @@ -161,7 +162,7 @@ - (void)pauseButtonClick { [self pause]; self.videoControl.playButton.hidden = NO; - self.videoControl.pauseButton.hidden = YES; + self.videoControl.pauseButton.hidden = YES; } - (void)closeButtonClick @@ -206,7 +207,7 @@ - (void)shrinkScreenButtonClick - (void)setProgressSliderMaxMinValues { CGFloat duration = self.duration; self.videoControl.progressSlider.minimumValue = 0.f; - self.videoControl.progressSlider.maximumValue = duration; + self.videoControl.progressSlider.maximumValue = floor(duration); } - (void)progressSliderTouchBegan:(UISlider *)slider { @@ -290,5 +291,11 @@ - (void)setFrame:(CGRect)frame [self.videoControl layoutIfNeeded]; } +#pragma mark - Delegate +-(void)moviePlaybackDidFinish{ + if ([self._delegate respondsToSelector:@selector(videoPlaybackEnded)]){ + [self._delegate videoPlaybackEnded]; + } +} @end