Preliminaries
The Android mobile SDK requires Java 17 and Android version 7 or newer, that is, API version 24 or newer.
Resource usage
The Android mobile SDK is about 3 MB large. The space required after installation is larger and varies with the dependencies required for your use case.
When running, the Android mobile SDK uses around 25 MB of RAM. Initializing the SDK uses an additional 3—4 MB of RAM.
Due to the variety of CPUs used in Android mobile devices, it’s difficult to state how much the SDK affects CPU usage. As a rough guide, using messaging can cause spikes of up to 10 % in CPU usage. Audio or video calls may result in CPU usage of around 50 %, with RAM usage going up to 400 MB.
Network traffic
During initialization, the SDK downloads about 0.3 MB of JavaScript files. The UI requires downloading around 2.5 MB of additional resources. Some of these downloads may be cached on the device, resulting in less network traffic for later use.
For text messaging, only the message itself and the HTTP request overhead are transmitted.
By default, Unblu transmits an image around five times per second in mobile co-browsing sessions if the content has changed. You can adjust the maximum frame capture rate with the configuration property com.unblu.mobiledevice.androidMaxFpsRate. The size of the image depends on the size of the mobile device’s screen but is typically 5—20 KB.
You can set the maximum resolution for the images with the following configuration properties:
In audio and video calls, network traffic depends on the quality of the connection, as both the LiveKit-based selective forwarding unit (SFU) and Vonage change the codec based on the network connection.
SDK integration
There are two ways to integrate the Unblu Android mobile SDK into your app:
-
Through the Maven Central repository
-
Using Android Archive (AAR) files
Maven Central repository
To add the Unblu Android mobile SDK to your project from the Maven Central repository, add the following lines to your app-level build.gradle
file:
mavenCentral()
, Groovy DSL
repositories {
mavenCentral()
maven { url 'https://jitpack.io' } (1)
}
dependencies {
implementation 'com.unblu.mobile-sdk-android:coresdk:4.x.x'(2)
implementation 'com.unblu.mobile-sdk-android:mobilecobrowsingmodule:4.x.x'(3)
implementation 'com.unblu.mobile-sdk-android:livekitmodule:4.x.x'(2)(4)
implementation 'com.unblu.mobile-sdk-android:callmodule:4.x.x'(2)(3)
implementation 'com.unblu.mobile-sdk-android:firebasenotificationmodule:4.x.x'(2)
}
1 | Required if you use the Unblu LiveKit module. |
2 | Unblu-related dependencies; replace 4.x.x with the specific build version you want to use. |
3 | Required if you use Vonage for audio and video calls. The module has a dependency on the Vonage Video API Android SDK . |
4 | Required if you use LiveKit for audio and video calls. The module has a dependency on the Android SDK for LiveKit. |
mavenCentral()
, Kotlin DSL
repositories {
mavenCentral()
maven(url = "https://jitpack.io") (1)
}
dependencies {
implementation('com.unblu.mobile-sdk-android:coresdk:4.x.x')(2)
implementation('com.unblu.mobile-sdk-android:mobilecobrowsingmodule:4.x.x')(2)
implementation('com.unblu.mobile-sdk-android:livekitmodule:4.x.x')(2)(3)
implementation('com.unblu.mobile-sdk-android:callmodule:4.x.x')(2)(4)
implementation('com.unblu.mobile-sdk-android:firebasenotificationmodule:4.x.x')(2)
}
1 | Required if you use the Unblu LiveKit module. |
2 | Unblu-related dependencies; replace 4.x.x with the specific build version you want to use. |
3 | Required if you use LiveKit for audio and video calls. The module has a dependency on the Android SDK for LiveKit. |
4 | Required if you use Vonage for audio and video calls. The module has a dependency on the Vonage Video API Android SDK . |
Before updating the Unblu Android mobile SDK in your project, make sure the version of the SDK you want to use is compatible with the version of the Unblu Collaboration Server that your organization uses. For more information, refer to Collaboration Server and mobile SDK compatibility. |
Android Archive integration
Unblu provides Android Archive (AAR) files, with additional JAR files for the source code and Javadoc of public classes. These files are delivered as a single .tar.gz
file for the SDK. Internally, the TAR files are structured like a Maven repository.
The *-public-sources.jar files only contain the sources for the public API part and can’t be used as libraries because they don’t contain the internal classes. |
To integrate the Unblu Android mobile SDK, extract the TAR files in your app’s project folder. To add the SDK to the project, add the following lines to the app/build.gradle
file so that all the SDK’s dependencies are retrieved automatically:
app/build.gradle
entries for the Unblu Android mobile SDK
repositories {
//...
mavenCentral() (1)
maven { url 'https://jitpack.io' } (2)
maven {
url "../unblu-mobile-sdk"
}
}
//...
dependencies {
//...
implementation 'com.unblu.mobile-sdk-android:coresdk:4.x.x' (3)
implementation 'com.unblu.mobile-sdk-android:firebasenotificationmodule:4.x.x' (3)
implementation 'com.unblu.mobile-sdk-android:callmodule:4.x.x' (3)(4)
implementation 'com.unblu.mobile-sdk-android:livekitmodule:4.x.x' (3)(5)
implementation 'com.unblu.mobile-sdk-android:mobilecobrowsingmodule:4.x.x' (3)
}
1 | Required if you use the Unblu audio and video call feature in your app. |
2 | Required if you use the Unblu LiveKit module. |
3 | Unblu-related dependencies; replace 4.x.x with the specific build version you want to use. |
4 | This module is required if you use Vonage for audio and video calls. The module has a dependency on the Vonage Video API Android SDK . |
5 | This module is required if you use LiveKit for audio and video calls. The module has a dependency on the Android SDK for LiveKit. |
app/build.gradle.kts
entries for the Unblu Android mobile SDK
repositories {
//...
mavenCentral() (1)
maven { url = uri('https://jitpack.io') } (2)
maven {
url = uri("../unblu-mobile-sdk")
}
//...
implementation('com.unblu.mobile-sdk-android:coresdk:4.x.x') (3)
implementation('com.unblu.mobile-sdk-android:firebasenotificationmodule:4.x.x') (3)
implementation('com.unblu.mobile-sdk-android:livekitmodule:4.x.x') (3)(4)
implementation('com.unblu.mobile-sdk-android:callmodule:4.x.x') (3)(5)
implementation('com.unblu.mobile-sdk-android:mobilecobrowsingmodule:4.x.x') (3)
}
1 | Required if you use the Unblu audio and video call feature in your app. |
2 | Required if you use the Unblu LiveKit module. |
3 | Unblu-related dependencies; replace 4.x.x with the specific build version you want to use. |
4 | Required if you use LiveKit for audio and video calls. The module has a dependency on the Android SDK for LiveKit. |
5 | Required if you use Vonage for audio and video calls. The module has a dependency on the Vonage Video API Android SDK . |
The Unblu SDK’s firebasenotificationmodule
uses Firebase Cloud Messaging for push notifications. For Firebase to work correctly, you must add the google-services.json
file from your Firebase project to your app and append the following line at the end of your app’s build.gradle
file.
app/build.gradle
apply plugin: 'com.google.gms.google-services'
You don’t need to set up Firebase in your code. The SDK does this automatically if you enable push notifications. |
See also
-
For information on adding Firebase to an Android app, refer to Google’s instructions for adding Firebase to your app.
-
For an overview of the Unblu Android mobile SDK, refer to the Android mobile SDK reference.