Android WebRTC Client SDK

This SDK implements WebRTC, using Nabto Edge Streams for signaling. It wraps the Google WebRTC distribution by Stream player component for simple integration in your own app.

Installation

Warning: The main-SNAPSHOT staging packages may not always be readily available. If you’re having issues with using the Android WebRTC client SDK in this way, please contact support.

Currently the WebRTC SDK for Android is only available through a staging repository. Including the SDK into your project will be simplified once a full release has been made.

In settings.gradle, add a custom maven repository to your dependency resolution management.

dependencyResolutionManagement {
    ...
    repositories {
        google()
        mavenCentral()
        maven {
            url = uri("https://s01.oss.sonatype.org/content/repositories/snapshots/")
        }
    }
}

Now you may add modules from the Nabto Client SDK to your app’s build.gradle using the main-SNAPSHOT version. Note that if you use other modules from the client sdk, such as library or iam-util, these should update their versions to the same.

implementation ("com.nabto.edge.client:library:3.0.1")
// Possibly other modules from com.nabto.edge.client
// ...
implementation ("com.nabto.edge.client:webrtc:main-SNAPSHOT")

Usage

The WebRTC Video Streaming Client best practice guide contains Kotlin example snippets showing how to use the SDK to do WebRTC signaling on an established Nabto Edge connection. And how to use the EdgeVideoView component to display received WebRTC frames.

The source code is available for a simple app that demonstrates using this SDK. This app is also available in the app store for a quick end-to-end demo.