webRTC Android源码拉取与编译与运行

本文详细介绍了如何从Chromium源码库获取WebRTC(RTCweb、RTCandroid和RTCios)源码,并指导读者进行编译,包括设置depot工具、拉取源码、编译过程以及针对Android Studio的三种开发方式,尤其关注于解决编译过程中遇到的问题和建议的开发路径。

前言

webRTC源码,有RTC web的,也是默认的,也有RTC android的,还有RTC ios的,可以根据项目需要,拉取不同的源码。当然了,其实不同的仓库源码,底层库基本一样的,直白的说,C++的代码基本一样,大部分是公共的代码,不然它也不敢宣称自己是跨平台的。RTC所谓跨平台,就是底层库(C++实现)是同一个,但针对不同的平台,比如对android,会包一层java API来是适配,给android开发着使用,ios或者web也一样(web就是包一层JS API)。

话不多说,下面开始介绍如何拉取源码,以及如何编译。

1 源码拉取

1.1 安装必备工具depot

git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

设置环境变量, home目录的.bashrc,末尾添加两句话

export WEBRTC_DEPOT_TOOLS=/home/chenxiaofeng/webRTC_Source/depot_tools
export PATH=$PATH:$WEBRTC_DEPOT_TOOLS

使变量生效, 命令行执行
source ~/.bashrc

1.2 拉取源码

创建一个目录,然后进到目录,拉取。
如前文说的,webRTC源码,有基于浏览器的,也是最基本的,也有基于android的和ios的。根据你的需要,建议分开拉取。本文以android为例子说明,命令如下:

mkdir webrtc_android
cd webrtc_android
fetch --nohooks webrtc_android
gclient sync

命令fetch和gclient,甚至包括下面编译用的gn,就是上面1.1 安装的工具,所以如果你执行失败,请确认1.1有没有设置正确喔。

命令执行了,会拉取webRTC源码,且额外加了android相关的依赖,例如Android SDK/ NDK。整个工程大概21G,主要占用的是第三方依赖,在third_party目录下,大概17G+,其中third_party/Android相关依赖有6G+。所以拉取时,请确保存储空间充裕。

另外,如果是基于浏览器的,那命令如下:

mkdir webrtc
cd webrtc
fetch --nohooks webrtc
gclient sync

同理,ios的fetch改成fetch --nohooks webrtc_ios就可以了。

评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

newchenxf

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值