webrtc/talk/examples/android
kjellander@webrtc.org 5072e0f6cd Update Android projects to API level 21.
The update in https://webrtc-codereview.appspot.com/23309004
was not enough, so this updates to 21 instead.

This is required in order to roll chromium_revision to
keep up with Chrome, as third_party/android_tools have now
dropped support for API level 20.

Commands used:
third_party/android_tools/sdk/tools/android update project --name OpenSlDemo --target android-21 --path webrtc/examples/android/opensl_loopback
third_party/android_tools/sdk/tools/android update project --name WebRTCDemo --target android-21 --path webrtc/examples/android/media_demo/
third_party/android_tools/sdk/tools/android update project --name AppRTCDemo --target android-21 --path talk/examples/android/
Then I restored the changes of the ANDROID_SDK_ROOT -> ANDROID_HOME since it seems the Chromium build toolchain doesn't set it properly when
build/android/envsetup.sh is sourced.

BUG=
R=glaznev@webrtc.org, henrike@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/25029004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7587 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-31 23:26:10 +00:00
..
assets AppRTCDemo: replace the use of query-string parameters for pre-JB devices. 2013-07-29 19:07:33 +00:00
jni Adds trunk/talk folder of revision 359 from libjingles google code to 2013-07-10 00:45:36 +00:00
res ApprtDemo Android: Switch between front and back camera. 2014-10-29 08:10:03 +00:00
src/org/appspot/apprtc ApprtDemo Android: Switch between front and back camera. 2014-10-29 08:10:03 +00:00
AndroidManifest.xml Adding setting screen to AppRTCDemo. 2014-10-27 17:22:15 +00:00
ant.properties Adds trunk/talk folder of revision 359 from libjingles google code to 2013-07-10 00:45:36 +00:00
build.xml Adds trunk/talk folder of revision 359 from libjingles google code to 2013-07-10 00:45:36 +00:00
project.properties Update Android projects to API level 21. 2014-10-31 23:26:10 +00:00
README AppRTCDemo(android): README updates for a shrinking envsetup.sh world. 2014-05-28 17:29:09 +00:00

This directory contains an example Android client for http://apprtc.appspot.com 

Prerequisites:
- "Android Specific Steps" on http://www.webrtc.org/reference/getting-started
- Set up webrtc-related GYP variables:
  export GYP_DEFINES="build_with_libjingle=1 build_with_chromium=0 libjingle_java=1 $GYP_DEFINES"
  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 -n org.appspot.apprtc/.AppRTCDemoActivity -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.