先展示播放器效果:
依舊繼承 Listo 本人的強(qiáng)迫癥俏橘,還是從最初到完成完整的寫一個(gè)攻略來記錄一下,這里聲明 Listo 本人也是看了很多的戴維營攻略才總結(jié)分享給大家這一篇攻略的祖今。
首先粘咖,Listo 使用的是一個(gè)開源的第三方框架而不是使用系統(tǒng)本身帶有的框架,?這個(gè)框架的名字叫做 MobileVLCKit 框架锉走,至于框架的獲取瘫怜,Listo 這里也有截圖术徊,首先打開終端,執(zhí)行命令 "$git clonehttps://github.com/wuqiong/MobileVLCKit-SDK.git",當(dāng)這條命令運(yùn)行完成以后宝磨,在進(jìn)行下面的命令 "$cd MobileVLCKit-SDK", "$./bootstrap"弧关。這里 Listo 一定提醒后來的朋友要記得這個(gè)服務(wù)器是日本的服務(wù)器盅安,所以執(zhí)行命令的速度很慢唤锉,希望各位一定耐心等待,一定耐心别瞭。上述操作的圖示:
這時(shí)我們的?MobileVLCKit 框架就已經(jīng)獲取到本機(jī)了,我們這時(shí)打開 Xcode 進(jìn)行使用。
首先建立 IOS 工程饿敲,Listo 這里就不細(xì)說了喜德,因?yàn)檎娴暮芑A(chǔ),當(dāng)我們建立好工程之后墙歪,開始導(dǎo)入本工程我們下載的第三方框架听系。
點(diǎn)擊工程名,找到主界面的 Build Phases虹菲,然后打開 Link Binary With Libraries 進(jìn)行導(dǎo)入框架的工作如圖(這里 Listo 截圖為導(dǎo)入完成后的圖靠胜,如果沒有導(dǎo)入的時(shí)候Link Binary With Libraries 里面應(yīng)該為空):
這個(gè)時(shí)候我們點(diǎn)擊左下角的 + 按鈕,選擇 Add Other 的按鈕進(jìn)行導(dǎo)入系統(tǒng)框架以外的第三方框架如圖:
然后我們進(jìn)入尋找我們下載的第三方庫的階段毕源,(細(xì)心的朋友一定發(fā)現(xiàn) Listo 在終端執(zhí)行語句的時(shí)候并沒有設(shè)置文件下載的路徑浪漠,這里導(dǎo)致了尋找文件不知所措,還好我們可以直接在右上角搜索即可或者 Listo 這里公開一下文件的目錄如圖)
這樣我們選擇最右邊第三列的第三行即可導(dǎo)入第三方的 MobileVLCKit 框架了霎褐。
導(dǎo)入框架之后我們進(jìn)行正式的編程工作址愿,這里編程因?yàn)樯婕?OC 和 Swift 的混編,Listo 把注釋寫的比較詳細(xì)冻璃。
首先在 ViewController.swift 中我們輸入代碼如圖
然后根據(jù)這段代碼的注釋我們很容易理解含義响谓,同時(shí)也需要繼續(xù)完成兩個(gè)操作來響應(yīng)這段代碼不會(huì)報(bào)錯(cuò)。
首先省艳,打開 Supporting 下創(chuàng)建的 .h 文件歌粥,引入第三方的框架如圖完成導(dǎo)入 OC 框架:
其次相應(yīng)程序的操作是點(diǎn)開文件目錄中的 storyboard,選中 video View拍埠,在屏幕的最右側(cè)進(jìn)行視圖的類型修改如圖(這里的操作是為了響應(yīng)程序中的varvideoView =self.view//播放器實(shí)例的播放窗口屬性這句代碼失驶,希望大家可以自己感悟):
基本的配置就到這里了,再次運(yùn)行程序我們會(huì)發(fā)現(xiàn)依舊有很多 bug枣购,這里并不是程序的原因嬉探,而是配置的原因擦耀,我們這是會(huì)發(fā)現(xiàn) ios 應(yīng)用不僅僅需要這么一點(diǎn)點(diǎn)框架,而是需要 聲音涩堤,字幕等多框架共同協(xié)作的眷蜓,所以我們需要像剛開始導(dǎo)入第三方框架那樣導(dǎo)入系統(tǒng)框架,系統(tǒng)框架需要導(dǎo)入的列表 Listo 這里已經(jīng)總結(jié)出來了如圖:
這時(shí)當(dāng)我們再次運(yùn)行的時(shí)候會(huì)發(fā)現(xiàn) bug 從 190 減少了很多胎围,但是還有錯(cuò)誤吁系,這里是系統(tǒng)編譯 C++ 類型的錯(cuò)誤,我們需要繼續(xù)進(jìn)行設(shè)置白魂,依舊點(diǎn)擊工程的名字汽纤,然后找到 Build Settings 然后找到 Apple LLVM 6.0 -Language-C++然后進(jìn)行設(shè)置如圖:
此時(shí)我們需要想到我們此時(shí)在設(shè)置 C++ 的編譯,那么在工程的目錄里把 Channel.m 設(shè)置為 .mm 來代表 C++ 文件福荸,這樣我們所有的設(shè)置就進(jìn)行完了蕴坪,之后 Run 一下我們就可以進(jìn)行視頻的觀看了,如果覺得豎屏視頻不滿意可以在 General 中進(jìn)行設(shè)置敬锐,這里 Listo 就不多說了背传。
總結(jié):本攻略最大的收獲我覺得應(yīng)該就是 OC 和 Swift 的混編的思想很重要,希望大家可以自己來感悟一下台夺。共同進(jìn)步径玖,開源中國,轉(zhuǎn)載請聲明出處颤介。
原文出處: http://blog.csdn.net/u013096857/article/details/38148135