webrtc/sdk/android
Paulina Hensman a2a9875dc2 Add unit tests for Android audio device module
The tests are a combination of the old audio_device_unittest.cc and
audio_manager_unittest.cc, with the exception of a few that were no
longer relevant.

RunPlayoutAndRecordingInFullDuplex remains disabled according to its
comment, but has been verified to pass on at least one device.
MeasureLoopbackLatency also remains disabled, but has not been tested due
to lack of necessary hardware.

Bug: webrtc:7452
Change-Id: Ie361bc8f5e1990729d7b4699faf2a73abe3cbe8d
Reviewed-on: https://webrtc-review.googlesource.com/69340
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Paulina Hensman <phensman@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22836}
2018-04-12 09:27:45 +00:00
..
api/org/webrtc Android: Allow construction of GlTextureFrameBuffer from non-OpenGL thread 2018-04-12 07:19:46 +00:00
instrumentationtests Annotate rest of WebRTC with @Nullable. 2018-03-28 08:30:06 +00:00
native_api Android: Add AudioDeviceModule interface and clean up implementation code 2018-04-06 10:13:02 +00:00
native_unittests Add unit tests for Android audio device module 2018-04-12 09:27:45 +00:00
src Small cleanup in sdk/android ADM 2018-04-11 13:44:56 +00:00
tests/src/org/webrtc Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
AndroidManifest.xml Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
BUILD.gn Add unit tests for Android audio device module 2018-04-12 09:27:45 +00:00
OWNERS Android: Add henrika@ as owner of audio code 2018-03-21 09:59:18 +00:00
PRESUBMIT.py Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
README Updating android/README. 2018-03-01 20:22:48 +00:00

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, make sure you have a WebRTC checkout
with Android specific parts. This can be used for linux development as well by
configuring gn appropriately, as it is a superset of the webrtc checkout:
fetch --nohooks webrtc_android
gclient sync

You also must generate GN projects with:
--args='target_os="android" target_cpu="arm"'

More information on getting the code, compiling and running the AppRTCMobile
app can be found at:
https://webrtc.org/native-code/android/

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 src/jni/pc/.