renyuzhuo / WebRTC-Android-Learn

AppRTCMobile——WebRTC Android
https://renyuzhuo.cn/#/issues/4
76 stars 23 forks source link

Compiling #7

Closed flyminiboy closed 7 years ago

flyminiboy commented 7 years ago

我自己在Java文件里面新增native方法是不是只需要在 peerconnection.cc 里面进行类似的实现就行,还需要的其他操作吗? 还有就是可以同时编译多个cpu 版本的动态库吗?

RWebRTC commented 7 years ago

@fly518420 Java中添加native方法,native添加对应方法。可以编译多个动态库,不同so文件放到不同文件夹下。打包apk就可以。

flyminiboy commented 7 years ago

gn gen out/Default --args='target_os="android" target_cpu="arm"' 这个地方如何指定多个CPU呢?

RWebRTC commented 7 years ago

@fly518420

To build for ARM64: use target_cpu="arm64"
To build for 32-bit x86: use target_cpu="x86"
To build for 64-bit x64: use target_cpu="x64"

Reference

https://webrtc.org/native-code/android/

flyminiboy commented 7 years ago

这个不是需要每次都单独指定一下吗? 可以一次全部指定了吗?

RWebRTC commented 7 years ago

@fly518420 参考 这里,不可以一次全部指定,需要分别编译,脚本可以搞定这个。

flyminiboy commented 7 years ago

@RWebRTC 我看这个脚本是顺序执行的,我想并发执行麻烦指点一个方向,谢谢

RWebRTC commented 7 years ago

@fly518420 Maybe this will help.

flyminiboy commented 7 years ago

还有一个问题就是我现在Java版本是1.7的需要更新到1.8吗? 我看你的编译脚本上面有注明Java8 而且我在编译的时候提示我升级编译器

RWebRTC commented 7 years ago

@fly518420 是的,需要更新到1.8,否则可能报错

flyminiboy commented 7 years ago

额 的确报错了,是和编译的平台有关系吗?我之前按照官网的编译的arm的平台的没有问题,现在报错是arm64

flyminiboy commented 7 years ago

@RWebRTC 我换了Java8 还是报错 ninja: build stopped: subcommand failed

flyminiboy commented 7 years ago

//设置环境变量 export PATH=pwd/depot_tools:"$PATH"

//选择Android为目标 export GYP_DEFINES="OS=android" 这俩句话每次编译都需要进行配置吗? 我可以配置到 /etc/profile 里面吗?

RWebRTC commented 7 years ago

@fly518420 具体在哪里配置不是关键,保证在编译时环境变量中有要求的属性就行

RWebRTC commented 7 years ago

@fly518420 不同环境编译时遇到的问题可能有很多,具体情况查一下吧,我并不能确定所有的错误我都遇到过解决过。