基于七牛播放器PLPlayer的二次封裝(有全屏彈幕)
簡單一句話實現(xiàn)播放功能
描述了PLPlayer的各種問題
title: 基于七牛播放器PLPlayer的二次封裝(全屏) 以及七牛iOS播放器各個版本的問題
date: 2017-09-01
categories: "iOS"
tags:
- Objective-C
description: 簡單一句話實現(xiàn)播放功能惭适。
源碼地址:Github https://github.com/enamor/PLPlayerPackaging
效果展示:
基于PLPlayer封裝的視頻播放器 目前用的是2.4.3版本找田、一句話即可實現(xiàn)視頻的播放 支持橫屏减宣、豎屏,監(jiān)聽屏幕旋轉(zhuǎn)
蛋疼的問題:
- 2.3 頻繁切換播放有崩潰問題 頻繁切換無法播放同2.4.3解決方式
- 2.4.3 pause回調(diào)狀態(tài)不對 頻繁切換播放無法播放需要以下處理(
if([[UIDevice currentDevice] systemVersion].intValue>=10){
? // 增加下面這行可以解決iOS10兼容性問題了
? self.player.avplayer.automaticallyWaitsToMinimizeStalling = NO;
? }
3.0.0 frame設(shè)置無效 首次播放之后 修改frame無效 部分視頻無法播放聲音
-
3.0.1 1.部分視頻無法播放聲音 pause 后 2.播放器 stop 再play 播放器重新繪制layer 從頭播放
------------------------我也是醉了反正是沒有完善的的版本,建議用ijkplayer替換 (如果不是老項目中用到的!!!W富础!D丽I倚丁!8迸8蚋摺!14鞫浮!9嫡恰P襞!9啊O才印!F宸怠Q佣肌!>ⅰU丁!=桶洹<的恪!u锿铩S奈邸!2疽獭>辔蟆!1馕弧W继丁!S虺稹P倘弧!O疚瘛F寐印!?严浮T裾颉!@ǜ摹D逋恪!V瞿堋A呙贰!Q骈荨c旧妗!N錾弧6颠丁!q媒摹9酢!CK馈9虻!B臀B啪谩R涫住!1换贰2诩啊!I富丁=恰!0婀谩V选!0铡4险骸!3闯啊S钜Α!7蛲埂;肜汀!X舶琛Dа!8氡狻K庹馈!!)————————————
使用說明:
播放器需要傳入一view 自動適應(yīng)view的尺寸 為了簡化全屏模式統(tǒng)一使用屏幕旋轉(zhuǎn)的方式進(jìn)行適配全屏、目前控制層UI未做詳細(xì)拆分诵闭,后期將逐步優(yōu)化绝编、只為做最簡單的視頻播放器
- 單利模式
//自動創(chuàng)建單例 此次一句話即可實現(xiàn)播放 同時適配橫豎屏
[PackPlayer playWithUrl:url onView:_playView];
//單例需要手動釋放
[NIPlayer releasePlayer];
狀態(tài)欄旋轉(zhuǎn)需要控制器中重寫方法 (目前UIViewController分類中已經(jīng)重寫)且需要在info.Plist 添加 View controller-based status bar appearance 設(shè)置成No囤热,默認(rèn)為Yes
- (BOOL)shouldAutorotate {
return NO;
}
溫馨提示:
1、為了處理視頻全屏模式后臺進(jìn)入前臺可以平滑的進(jìn)入(無啟動頁)對AppDelegate 添加了分類處理 重寫了以下方法
//一般狀態(tài)此處用戶無需處理
- (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支持方向設(shè)置為豎屏即可
博客地址:http://oxy.pub