Home / API v1.5+ References / Client API / Android Toolkit

The EnableX Android Toolkit is for developing Native Android Applications integrated with EnableX RTC sessions. The Toolkit has all the methods interfacing EnableX Signaling Server and Media Servers to communicate and to listen to event based notifications during a session.

Released: April 1, 2020. File Size: 897KB

Table of Contents

How to use Android Toolkit?

By using Android Archive Library (.aar)

  • Download the .aar file from the link given above.
  • Put the file into your Project Directory of Android Studio.
  • Edit the build.gradle for your project (At Project’s Root) and place the following Code Snippet in the allprojects.repositories section
allprojects {
      repositories {
          flatDir {
              dirs 'src/main/libs'
          }
      }
  }
  • Edit the build.gradle for your module (The app/build.gradle file) and add the following Code Snippet in the dependencies section:
 implementation 'org.webrtc:google-webrtc:1.0.25331'

 implementation('io.socket:socket.io-client:1.0.0') {
     //Excluding org.json which is provided by Android
     exclude group: 'org.json', module: 'json'
 }

 implementation (name: 'EnxRtcAndroid-release_1.5.3.1', ext: 'aar')

By using Maven Dependency

A Maven version is also available. Modify your app gradle to download the Enablex Android sdk.

  • Edit the build.gradle for your project and add the following code snippet to the allprojects.repositories section:
 allprojects {
      repositories {
           maven  {
               url  "https://dl.bintray.com/enablex/maven" 
          }
      }
  } 
  • Modify build.gradle for your module and add the following code snippet to the dependencies section:
compile 'com.enxrtc:Enx-Rtc-Android:1.5.3.1'

Define Permissions

Define Permissions in AndroidManifest.xml

<uses-permission android:name="android.permission.CAMERA"/>  
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> 
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
<uses-permission android:name="android.permission.BLUETOOTH"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>

Define Features

Define features in AndroidManifest.xml

<uses-feature android:name="android.hardware.camera"/> 
<uses-feature android:name="android.hardware.camera.autofocus"/>  
<uses-feature android:glEsVersion="0x00020000" android:required="true"/>     

Explore Android Toolkit