This directory holds a Java implementation of the webrtc::PeerConnection API, as well as the JNI glue C++ code that lets the Java implementation reuse the C++ implementation of the same API. To build the Java API and related tests, build with OS=linux or OS=android and include build_with_libjingle=1 build_with_chromium=0 in $GYP_DEFINES. To use the Java API, start by looking at the public interface of org.webrtc.PeerConnection{,Factory} and the org.webrtc.PeerConnectionTest. To understand the implementation of the API, see the native code in jni/. An example command-line to build & run the unittest: cd path/to/trunk GYP_DEFINES="build_with_libjingle=1 build_with_chromium=0 java_home=path/to/JDK" gclient runhooks && \ ninja -C out/Debug libjingle_peerconnection_java_unittest && \ ./out/Debug/libjingle_peerconnection_java_unittest (where path/to/JDK should contain include/jni.h) During development it can be helpful to run the JVM with the -Xcheck:jni flag.