• Stars
    star
    105
  • Rank 328,196 (Top 7 %)
  • Language
    Java
  • Created almost 7 years ago
  • Updated almost 7 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

WebRTC is a free, open project.The source code of this demo is based on official samples(src/samples/androidapp). I have compiled webrtc source to get required .so and .jar files, so you can just build it by android studio.

webrtc-android-demo-apprtc

WebRTC is a free, open project.The source code of this demo is based on official samples(src/samples/androidapp). I have compiled webrtc source to get required .so and .jar files, so you can just build it by android studio.

demo

How to start

This demo is based on WebRTC.the official website: https://webrtc.org/

How to build and run?

Please clone this project,build it with android stuido,install the target apk files to your devices.

Overview

1,go to website : https://appr.tc/.input your room id(any number).

webrtc-server

2,open the apprtc app,input the same room id.

webrtc-android-app

3,Experience p2p connectivity with webrtc.

webrtc p2p connectivity

Development

if you try to compile the source of webrtc,you'll depressed at its large size,the total checkout size will be about 16 GB. and more than 30G after compiled. for more details about getting source code: https://webrtc.org/native-code/android/

if you have installed all required softwares in linux. let's excute cmds like the follow tips:

#!/bin/bash
#[email protected]

export PATH=$PATH:~/webrtc/depot_tools

cd ~/webrtc/android/

fetch --nohooks webrtc_android
gclient sync
gclient runhooks

ls
cd src

git new-branch webrtc_compile
git checkout webrtc_compile

echo "--------------compile config:android,arm-----------------"

gn gen out/arm --args='target_os="android" target_cpu="arm"'

echo "-----------------start compiling webrtc---------------------"

ninja -C out/arm

echo "-----------------compile webrtc done---------------------"

#ninja -C out/arm AppRTCMobile
#build/android/gradle/generate_gradle.py --output-directory $PWD/out/arm --target "//webrtc/examples:AppRTCMobile" --use-gradle-process-resources --split-projects --canary

echo "start copying jar files"
mkdir ../libs/armeabi-v7a/

cp out/arm/lib.java/sdk/android/libjingle_peerconnection_java.jar ../libs/libjingle_peerconnection_java.jar 
cp out/arm/lib.java/rtc_base/base_java.jar ../libs/base_java.jar 
cp out/arm/gen/modules/audio_device/audio_device_java__compile_java.javac.jar ../libs/audio_device_java__compile_java.javac.jar
cp out/arm/lib.java/examples/androidapp/third_party/autobanh/autobanh.jar ../libs/autobanh.jar

echo "start copying so files"

cp out/arm/libjingle_peerconnection_so.so ../libs/armeabi-v7a/libjingle_peerconnection_so.so

echo "task has finished"
exit 0

# scp /Users/duqian/Downloads/webrtc_arm.sh [email protected]:/home/nonolive/webrtc/android/

Future

Maybe I will share more articles about webrtc in the future.

Thanks to WebRTC team!

Dusan's E-mail: [email protected]

WebRTC Demos:webrtc-android-demo-apprtc