attention:官网提供的构建方法有毒。。官网https://webrtc.org/native-cod…:build/android/gradle/generate_gradle.py –output-directory $PWD/out/Debug –target “//examples:AppRTCMobile” –use-gradle-process-resources –split-projects –canary几大坑点:1.使用–canary参数这样会使得生成的工程依赖cannary版本的as,如果你用来编译的webrtc源码特别的新,那么导入到windows电脑的as上面的时候你会发现,工程依赖的as版本比你windows电脑的as版本(windows电脑的版本智能更新到stable的最新版)还要新,如果强行改build.gradle上面的as版本配置,可能会遇到各种奇葩问题so:如果webrtc源码特别新,那生成的时候就要生成stable版本,怎么生成呢,去掉–canary,默认的就是stable版本;如果webrtc源码比较老,那没问题,还是用–canary,什么都不用改2.生成的工程很诡异,生成的gradle文件夹直接导入到as,出现各种源码找不到,google自带工具找不到的问题首先,工程源码以及jar so都还在webrtc的源码目录,并没有拷贝到gradle文件夹,得把相应的webrtc源码目录一并拷贝到windows,才能让工程找到源码。另外,各级的build.gradle里面的exclude各种假如org.webrtc.audio包所在的目录,导致部分子工程找不到org.webrtc.audio包,去掉exclude的相关内容,却会出现其它问题。so… 不建议直接使用这个生成的目录,而应该使用webrtc源码里面的/src/example/androidapp目录为蓝本,结合/src/example/aarproject里面的各个build.gradle以及https://github.com/duqian2919…https://github.com/Piasy/webrtc里面的build.gradle最终构建好自己所能使用的as工程构建工程的时候要注意:1.先自己创建一个没有c++support的helloworld工程,不要直接import源码里面的androidapp文件夹工程,这样会有各种奇怪问题2.把androidapp目录下的res资源文件以及AndroidMainifest文件拷贝到工程目录3.工程唯一依赖的jar文件是,autobanh.jar文件,记得要从src/out/ebug/lib.java目录导出来,然后加入到工程里面,libjingle_peerconnection_so.so也是一样,当然要加一级指示platform的目录工程目录结构as工程编译正常并且能够正常连接到默认的appr.tc服务器之后,如果要让AppRTCMobile连接到自己部署的服务器(比如是https://www.zeng060.top:8081),那么需要修改以下几个地方:1.全工程搜索appr.tc,全都改成https://www.zeng060.top:8081 大概有四五个地方吧2.打开org.appspot.apprtc.RoomParametersFetcher.java文件,把里面的connection.setDoOutput(true);去掉然后重新编译,就能连接到自己部署的服务器了ps:windows电脑需要翻墙,而且是全局翻墙,不然又得闹心了。。。(改host文件也能做到类似的效果)最新版本分离了app应用部分以及webrtc库部分,GitHub链接如下https://github.com/zengpeace/…觉得给力的话欢迎点star