f41f06b916
In r4665 I went a bit crazy with the manual reinterpretation of a pointer to a jlong (to avoid undefined behavior) but that's what reinterpret_cast<> is for. So use it directly now. Added a do-nothing DataChannel to AppRTCDemo to regression test this, since the only repro I've found of the original bug requires ARM ABI (PeerConnectionTest on ia32 fails to repro). BUG=2302 R=henrike@webrtc.org Review URL: https://webrtc-codereview.appspot.com/5489004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@5269 4adac7df-926f-26a2-2b94-8c16560cd09d |
||
---|---|---|
.. | ||
assets | ||
jni | ||
res | ||
src/org/appspot/apprtc | ||
AndroidManifest.xml | ||
ant.properties | ||
build.xml | ||
project.properties | ||
README |
This directory contains an example Android client for http://apprtc.appspot.com Prerequisites: - Make sure gclient is checking out tools necessary to target Android: your .gclient file should contain a line like: target_os = ['android', 'unix'] Make sure to re-run gclient sync after adding this to download the tools. - Env vars need to be set up to target Android; easiest way to do this is to run (from the libjingle trunk directory): . ./build/android/envsetup.sh Note that this clobbers any previously-set $GYP_DEFINES so it must be done before the next item. - Set up webrtc-related GYP variables: export GYP_DEFINES="build_with_libjingle=1 build_with_chromium=0 libjingle_java=1 $GYP_DEFINES" export JAVA_HOME=</path/to/JDK> export PATH=$JAVA_HOME/bin:$PATH To cause WEBRTC_LOGGING to emit to Android's logcat, add enable_tracing=1 to the $GYP_DEFINES above. - When targeting both desktop & android, make sure to use a different output_dir value in $GYP_GENERATOR_FLAGS or you'll likely end up with mismatched ARM & x86 output artifacts. If you use an output_dir other than out/ make sure to modify the command-lines below appropriately. - Finally, run "gclient runhooks" to generate Android-targeting .ninja files. Example of building & using the app: cd <path/to/libjingle>/trunk ninja -C out/Debug AppRTCDemo adb install -r out/Debug/AppRTCDemo-debug.apk In desktop chrome, navigate to http://apprtc.appspot.com and note the r=<NNN> room this redirects to. Launch AppRTC on the device and enter the same <NNN> into the dialog box. Alternatively, replace the <NNN> from the desktop chrome into the following command: adb shell am start -a android.intent.action.VIEW -d '"https://apprtc.appspot.com/?r=<NNN>"' This should result in the app launching on Android and connecting to the apprtc page displayed in the desktop browser. Yet another way to is to send the apprtc room URL to the Android device (e.g. using https://chrome.google.com/webstore/detail/google-chrome-to-phone-ex/oadboiipflhobonjjffjbfekfjcgkhco) and choose to open the URL with the AppRTCDemo app.