美文网首页
iOS七牛播放器二次封装以及各种问题描述(简单一句话实现播放功能

iOS七牛播放器二次封装以及各种问题描述(简单一句话实现播放功能

作者: en_nina | 来源:发表于2017-09-05 16:23 被阅读328次

    基于七牛播放器PLPlayer的二次封装(有全屏弹幕)

    简单一句话实现播放功能
    描述了PLPlayer的各种问题


    title: 基于七牛播放器PLPlayer的二次封装(全屏) 以及七牛iOS播放器各个版本的问题
    date: 2017-09-01
    categories: "iOS"
    tags:

    • Objective-C
      description: 简单一句话实现播放功能。

    源码地址:Github https://github.com/enamor/PLPlayerPackaging
    效果展示:

    基于PLPlayer封装的视频播放器 目前用的是2.4.3版本、一句话即可实现视频的播放 支持横屏、竖屏,监听屏幕旋转

    蛋疼的问题:

    • 2.3 频繁切换播放有崩溃问题 频繁切换无法播放同2.4.3解决方式
    • 2.4.3 pause回调状态不对 频繁切换播放无法播放需要以下处理(

    if([[UIDevice currentDevice] systemVersion].intValue>=10){

    ​ // 增加下面这行可以解决iOS10兼容性问题了

    ​ self.player.avplayer.automaticallyWaitsToMinimizeStalling = NO;

    ​ }

    • 3.0.0 frame设置无效 首次播放之后 修改frame无效 部分视频无法播放声音

    • 3.0.1 1.部分视频无法播放声音 pause 后 2.播放器 stop 再play 播放器重新绘制layer 从头播放

      ------------------------我也是醉了反正是没有完善的的版本,建议用ijkplayer替换 (如果不是老项目中用到的!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!)————————————

    使用说明:

    播放器需要传入一view 自动适应view的尺寸 为了简化全屏模式统一使用屏幕旋转的方式进行适配全屏、目前控制层UI未做详细拆分,后期将逐步优化、只为做最简单的视频播放器

    • 单利模式
    //自动创建单例 此次一句话即可实现播放 同时适配横竖屏
    [PackPlayer playWithUrl:url onView:_playView];
    
    //单例需要手动释放
    [NIPlayer releasePlayer];
    

    状态栏旋转需要控制器中重写方法 (目前UIViewController分类中已经重写)且需要在info.Plist 添加 View controller-based status bar appearance 设置成No,默认为Yes

    
    - (BOOL)shouldAutorotate {
        return NO;
    }
    

    温馨提示:

    1、为了处理视频全屏模式后台进入前台可以平滑的进入(无启动页)对AppDelegate 添加了分类处理 重写了以下方法

    //一般状态此处用户无需处理
    - (UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window {
        
        if (self.allowRotationType == AllowRotationMaskPortrait) {
            return UIInterfaceOrientationMaskPortrait;
        }else if (self.allowRotationType == AllowRotationMaskAllButUpsideDown) {
            return  UIInterfaceOrientationMaskAllButUpsideDown;
        }else {
            return UIInterfaceOrientationMaskLandscapeLeft | UIInterfaceOrientationMaskLandscapeRight;
        }
    }
    

    2、APP支持方向设置为竖屏即可

    博客地址:http://oxy.pub

    相关文章

      网友评论

          本文标题:iOS七牛播放器二次封装以及各种问题描述(简单一句话实现播放功能

          本文链接:https://www.haomeiwen.com/subject/wjzujxtx.html