Write Android apps using RTCMultiConnection

Please check all open-sourced apps here: http://webrtcweb.com/cordova-apps/

Download any application

Download any application from this page, for example video-conferencing app:

http://webrtcweb.com/cordova-apps/video-conferencing/

You should download the ZIP file; and extract on MacOSX. (you must use MacOSX)

How to compile Android app?

You can use following command to compile APK:

cordova build android

You can find the generated APK here:

project-directory/platforms/android/build/outputs/apk/android-armv7-debug.apk

For more information, please check: how-to-test.txt

Development Environment Prerequisites

namelink
Oracle Java Development Kit (JDK) http://www.oracle.com/technetwork/java/javase/downloads/
Apache Ant http://www.apache.org/dist/ant/binaries/
Android SDK http://developer.android.com/sdk/index.html

For a clear (comprehensive) guide, please check: appache: installing-the-requirements

Cordova Prerequisites

npm install -g cordova

Check if your system is ready

cordova requirements

Above command will/should display a result similar to this:

Java JDK: installed
Android SDK: installed
Android target: installed android-23,Google Inc.:Google APIs:23
Gradle: installed ----------------- this one seems redundant

Please make sure to re-install the prerequisites if you get different result.

Modify Config.xml

<?xml version='1.0' encoding='utf-8'?>
<widget id="com.yourdomain" version="3.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0"
    <name>yourAppName</name>
    <icon src="www/img/icon.png" />
</widget>

Please modify following XML attributes:

descriptionexample code
"id" attribute: It should be something like this:
<widget id="com.yourdomain"
"name" attribute: Name should NOT have spaces or special characters. Consider it as a "username":
<nameyourAppName</name
"icon" attribute: You can replace "icon.png" file with your own app-icon.

Now Re-Add Cordova-based Android platform

First of all remove old platforms, then re-add them:

# first of all, remove old android platforms
cordova platform remove android

# now re-add the platform
cordova platform add android --save

It will re-generate android application according to your app's new name, id, and icon.

Now build APK file

You can use following command to build APK:

cordova build android

You can find the generated APK here:

project-directory/platforms/android/build/outputs/apk/android-armv7-debug.apk

How to Modify Codes

File pathdescription
www/js/index.js this is your file; this is your code; everything goes here; open or join rooms, manage videos or layout, manage everything using this file.
www/index.html this is your HTML file; all the layout code goes here; your css+javascript will be linked through this file.
config.xml cordova relies totally on this file; cordova will check and compile plugins and platforms via this file.
www/js/RTCMultiConnection.js here goes RTCMultiConnection; you can always replace it with latest (recent) versions.
platforms/android/AndroidManifest.xml your android APK requires this file; you must enable permissions for camera+microphone through this file.