webrtc/sdk/android
Magnus Jedvert 3d687a1e3e Add null checks in stacktrace.cc
We have seen crashes originating from derefencing nullptrs in this code,
for unknown reasons. This CL adds null checks to protect against this.
The stacktraces will be missing or truncated when this happens.


Bug: b/147338449
Change-Id: Ieb006f0f8dec4f9621e4df2e2c1a9641f086df86
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/173593
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31079}
2020-04-16 09:26:11 +00:00
..
api/org/webrtc Add new AdapterTypes to android sdk 2020-04-03 08:33:04 +00:00
instrumentationtests Delete legacy MediaCodec HW codec integration. 2020-04-02 13:07:05 +00:00
native_api Add null checks in stacktrace.cc 2020-04-16 09:26:11 +00:00
native_unittests Concatenate string literals at compile time. 2020-01-14 14:47:48 +00:00
src Expose java to native conversion of bitrate limits in public API. 2020-04-08 07:38:59 +00:00
tests Rename java VideoCodecType to VideoCodecMimeType 2020-03-09 15:27:45 +00:00
AndroidManifest.xml Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
BUILD.gn Delete legacy MediaCodec HW codec integration. 2020-04-02 13:07:05 +00:00
OWNERS Remove inactive OWNERS. 2020-02-19 13:37:36 +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/.