1.WebRTC的iOS框架的選擇
目前兩個比較活躍的開源WebRTC實現(xiàn).
Google WebRTC:
項目地址是: https://code.google.com/p/webrtc/
Ericsson Research OpenWebRTC:
項目地址是: https://github.com/EricssonResearch/openwebrtc
我們戴維營教育為了給學(xué)生實戰(zhàn)項目中應(yīng)用WebRTC視頻通話技術(shù),選擇Google的WebRTC項目來構(gòu)建iOS App的開發(fā)框架,由于目前Chrome閱讀器和FireFox閱讀器的WebRTC支持都是采取該項目.那末問題就來了,既然閱讀器里都支持了WebRTC,那我們再去移植編譯它到iOS平臺干嗎呢,直接用webview 不行? 對,還不行! Apple在這方面已嚴(yán)重拖后腿了.不過他有他牛逼的Facetime技術(shù),可以隨時隨地的視頻通話,但是他不開源,所以我們只能垂涎了. 故還是老老實實的移植WebRTC吧.非常榮幸的是,Google 的Chromium項目開發(fā)者已實現(xiàn)了其WebRTC的Objective-C的1套API了.
不過,丑話還是說在前頭好,要從零開始集成WebRTC到我們的App中中, 簡直就是噩夢;由于WebRTC項目和Chromium項目有1定的關(guān)聯(lián)依賴關(guān)系,而且這些項目都是跨平臺的大項目,采取了Google自己的1套編譯系統(tǒng),相對我們平常的IDE來講要復(fù)雜的多.如果我們需要得到1個WebRTC的庫或框架,我們就需要忘記Xcode IDE和Interface Builder這些高科技,我們要切換到終端環(huán)境下用命令行下的黑科技來征服這1切.
2.開始WebRTC源碼下載
條件條件:
我現(xiàn)在用的Macbook,8G內(nèi)存,運行OS X 10.9.5.
安裝最新的git和subversions并確保其可正常工作.
Xcode 6.1.1 和 Command Line Tools.
中國大陸用戶額外要求,快速的VPN,或快速的shadowsocks服務(wù).(翻墻和給git和svn和curl設(shè)置代理等).
2.1 創(chuàng)建1個編譯目錄
我們創(chuàng)建1個目錄專門來寄存項目編譯工具和項目代碼倉庫等.確保該目錄所在磁盤可用空間最少有8~10G.打開系統(tǒng)的終端工具進入到Shell:
wuqiong:~ apple
2.2 下載Chromium的depot工具
在履行下面命令之前,請確保你已連上快速VPN已翻墻了,或你已給git單獨配置了有效的socks翻墻代理,如果你這些都不是問題,就當(dāng)我沒說.
wuqiong:~ apple
wuqiong:webrtc_build apple$git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
這是1套Google用來編譯Chromium或WebRTC的構(gòu)建工具,在我們后續(xù)的編譯進程中也將使用它.為了命令行使用方便,我們把這些工具的路徑加入到系統(tǒng)環(huán)境變量PATH中去:
wuqiong:webrtc_build apple
然后需要關(guān)閉當(dāng)前終端重新開啟1個來上面設(shè)置的環(huán)境變量生效.或在現(xiàn)在終端履行入門命令在當(dāng)前終端里加載生效:
wuqiong:webrtc_build apple
2.3 下載WebRTC的源碼
在我們的編譯工作目錄webrtc_build下創(chuàng)建1個webtrtc子目錄來寄存代碼,請履行下面命令:
wuqiong:webrtc_build apple
在上面的檢查工作沒錯以后,我們就需要開始把WebRTC項目的代碼倉庫下載1份到本地來.由于其倉庫之大,大約1共需要下載6G+的東西.所以這1步非常需要有耐心.而且需要有穩(wěn)定無障礙的互聯(lián)網(wǎng). 履行以下命令然后吧:
wuqiong:webrtc apple$ gclient config