#import <AVKit/AVKit.h>
@interface ECGNCAppStartVideo ()
/** 关闭视频按钮*/
@property (strong, nonatomic) UIButton *closeButton;
/** 播放视频vc*/
@property (strong, nonatomic) AVPlayerViewController *playLayerVC;
@end
@implementation ECGNCAppStartVideo
/** 显示启动视频*/
- (void)showAppStartVideoInVC:(UIViewController *)showVC
{
CGSize size = showVC.view.bounds.size;
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
button.frame = CGRectMake(size.width-80, 40, 50, 50);
//设置按钮图标
[button setImage:[UIImage imageNamed:@"ecgnc_skip_video_button"] forState:UIControlStateNormal];
[button addTarget:self action:@selector(videoPlayEnd) forControlEvents:UIControlEventTouchUpInside];
//关闭按钮添加在window上
[[UIApplication sharedApplication].delegate.window addSubview:button];
_closeButton = button;
//设置视频资源url
NSString *urlStr = [[NSBundle mainBundle] pathForResource:@"appStart.mp4" ofType:nil];
NSURL * url = [NSURL fileURLWithPath:urlStr];
AVPlayer *player = [[AVPlayer alloc] initWithURL:url];
AVPlayerViewController *vc = [[AVPlayerViewController alloc] init];
vc.showsPlaybackControls = NO;
vc.videoGravity = AVLayerVideoGravityResizeAspectFill;
vc.player = player;
vc.view.frame = showVC.view.bounds;
[showVC addChildViewController:vc];
[showVC.view addSubview:vc.view];
_playLayerVC = vc;
[vc.player play];
//注册播放结束监听
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(videoPlayEnd) name:AVPlayerItemDidPlayToEndTimeNotification object:nil];
}
/** 播放视频结束*/
- (void)videoPlayEnd
{
//移除通知监听
[[NSNotificationCenter defaultCenter] removeObserver:self];
//移除视频
[_playLayerVC.view removeFromSuperview];
//移除button
[_closeButton removeFromSuperview];
}