前 言
提到WebRTC,大家首先想到的可能是Web开发,虽然WebRTC首先发力于Web端,但WebRTC在Native端的应用场景也不容小觑,毕竟Native App的效率依然远超H5。
目前市面上关于WebRTC的书籍大多都是关注Web端的,对Native端(Android、iOS、macOS、Windows、Linux)的涉猎非常少,目前只有WebRTC Blueprints一书最后讲了一下Android和iOS平台的编译、运行,但这本书已经是2014年的书了。此外,还没有任何图书对WebRTC内部的技术实现进行分析。
本书的目的是引导想使用WebRTC Native的开发者进行入门学习,让读者通过本书的学习能够掌握WebRTC Native开发的基本流程,掌握WebRTC内部的主要数据流程,掌握对WebRTC进行调试分析、二次开发的能力。
本书的特点是示例代码丰富,实用性和系统性较强,适合WebRTC Native入门开发者阅读。此外,本书还包含WebRTC内部的主要数据流程,会对WebRTC的内部实现原理进行剖析。
本书首先会介绍Native端WebRTC SDK基本场景的使用,接着对基本场景的主要数据流程进行源码导读,之后会讨论一些高级的功能和场景,最后对Server端展开讨论。
笔者使用的真机开发环境为macOS 10.15.3(19D76)、Xcode 11.3.1(11C504)、Android Studio 3.5.3,虚拟机环境为Parallels Desktop Windows 10和Ubuntu 18.04.3。
本书所涉及的WebRTC示例代码以及源码分析内容都是基于WebRTC的#30432提交,即通过https://webrtc.googlesource.com/src.git/+/be99ee8f17f93e06c81e3deb4897dfa8253d3211/提交。OWT Server的代码都是基于4.3.x分支的。
本书所有源码开源在 GitHub 上(https://github.com/HackWebRTC/webrtc),读者也可以扫描下方的二维码获取:
如果你在下载过程中遇到问题,可发送邮件至booksaga@126.com获得帮助,邮件标题为“WebRTC Native开发实战”。
另外,欢迎读者加入本书专属社群:Hack WebRTC星球。对本书的任何疑问或者想法,以及WebRTC Native开发相关的话题,都可以在星球里提问、讨论,详情请访问:
https://blog.piasy.com/webrtc/index.html
许建林
2020年5月