WebRTC:下載與編譯Android版本的WebRTC(M66)

    WebRTC是Google公司開源的一套免費的網頁實時音視頻通信的解決方案,可以說性能非常強大。可以在Google WebRTC網站https://webrtc.org上下載並使用。

源碼 下載

    源碼下載需要一套工具,因爲Google爲WebRTC源碼的遷出設計了獨立的工具集depot_tools,其實也就是對git和svn的配合使用。工具下載參考https://dev.chromium.org/developers/how-tos/install-depot-tools

    工具下載:git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
    環境變量:export PATH=`pwd`/depot_tools:"$PATH"

接下來需要創建一個存放WebRTC源碼的文件夾這裏取名爲webrtc-checkout

    mkdir webrtc-checkout
    cd webrtc-checkout
    fetch --nohooks webrtc     //遷出工程

此時源碼就已經開始下載了,因爲國內翻牆網速慢,所以過程可能非常漫長,中間如果有中斷的話,執行gclient sync,就能繼續下載。

源碼 編譯

    確保之前的環境已經完全無差錯了,就可以進行源碼的編譯。先進入webrtc-checkout文件夾

    cd webrtc-checkout
    cd src
    ./build/install-build-deps.sh    //安裝一些依賴庫

    gn gen out/Debug --args='target_os="android" target_cpu="arm"'   // target_cpu還可以是arm64、x86、x86_64

    在上面指令操作之後,在out/Debug文件夾下找到args.gn文件,編輯該文件,添加兩行

    rtc_include_tests = false
    rtc_enable_protobuf = false

    或者把這兩行添加到上面的指令中去

    
gn gen out/Debug --args='target_os="android" target_cpu="arm" rtc_include_tests=false rtc_enable_protobuf=false'

    就可以編譯release版本的webrtc,相對於debug版本,少編譯很多文件,因此編譯速度更快一點。


    ninja -C out/Debug        // 當前和上一條指令中out/Debug這個路徑可以指定

編譯完成後進入out/Debug中有apk字樣的文件夾下面尋找,就能找到生成的apk文件,然後在android手機上安裝,配置服務器,就可以使用了(但是如果不用Google的服務器,自己配置很麻煩的)。                                                        

此外上面安裝依賴庫的指令不一定有用,官網上面的部署流程中也並沒有這一步,即使指令執行成功還是可能存在缺少依賴的問題,比如缺少JDK(編譯需要JDK,還要特別注意JDK的版本,我用的是openjdk 1.8)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章