android平台webrtc编译

来源:互联网 发布:知其所以然的意思 编辑:程序博客网 时间:2024/04/30 00:59

1 环境准备

官方说明:

http://www.webrtc.org/reference/getting-started/prerequisite-sw

针对 android 构建 需要 Ubuntu 64 位机器,虚拟机也行。

1.1 安装 SVN

直接用 apt-get 安装

sudo apt-get install subversion

1.2 安装 git

直接用 apt-get 安装

sudo apt-get install git

1.3 安装 Depot Tools

官方说明:

https://sites.google.com/a/chromium.org/dev/developers/how-tos/depottools

如果这个地址打不开,那直接 svn 下载

svn co http://src.chromium.org/svn/trunk/tools/depot_tools depot_tools

然后将 depot_tools 目录添加到 PATH 环境变量中

2 获取源码

官方说明:

http://www.webrtc.org/reference/getting-started/

2.1 获取源码

[plain] view plaincopy
  1. gclient config http://webrtc.googlecode.com/svn/trunk  
  2. echo "target_os = ['android', 'unix']" >> .gclient  
  3. gclient sync --force  

第二行不可省略,否则后面同步文件的时候,会缺少很多与android相关的文件

2.2 获取平台相关文件,并且生成构建脚本

[plain] view plaincopy
  1. gclient runhooks --force  

该步骤会下载 android ndk 和 sdk,时间较长

执行过程中,如果出现连不上 commondatastorage.googleapis.com (连接被重置),修改 trunk/webrtc/tools/update_resources.py,将 http 改为 https 就可以了

[plain] view plaincopy
  1. -REMOTE_URL_BASE = 'http://commondatastorage.googleapis.com/webrtc-resources'  
  2. +REMOTE_URL_BASE = 'https://commondatastorage.googleapis.com/webrtc-resources'  

3 构建工程

android 工程通过 ninja 管理,执行下面的命令构建:

[plain] view plaincopy
  1. ninja -C out/Debug/ WebRTCDemo  

最后生成 APK 文件 trunk/webrtc/video_engine/test/android/bin/WebRTCDemo-debug.apk

如果要生成release版本,执行下面的命令:

[plain] view plaincopy
  1. ninja -C out/Release/ WebRTCDemo  

如果要生成所有例子,执行下面的命令:

[plain] view plaincopy
  1. ninja -C out/Release/  

但是生成的文件名好像还是 debug 版本,比如 WebRTCDemo-debug.apk,名字一样倒也无所谓,但是文件大小好像没有区别,只少一点点。而且,我这里 release 版本的 WebRTCDemo 不能运行

4 运行测试

0 0