AgoraIO-Community / VideoUIKit-Android

An Android package to simply integrate Agora Video Calling or Live Video Streaming to your app with just a few lines of code.
https://agoraio-community.github.io/VideoUIKit-Android/
MIT License
25 stars 16 forks source link
android kotlin rtmp video video-streaming webrtc

[ARCHIVED] Agora VideoUIKit for Android

⚠️ This project is no longer maintained and has been archived.
Please note that this repository is now in a read-only state and will not receive any further updates or support. We recommend migrating to the following alternatives:

For documentation and support, please visit the Agora Documentation.

Instantly integrate Agora in your own Android application or prototype.

See documentation here.

Requirements

Installation

Step 1: Add it in your root build.gradle at the end of repositories:

allprojects {
  repositories {
    ...
    maven { url 'https://jitpack.io' }
  }
}

Step 2: Add the dependency

dependencies {
  implementation 'com.github.AgoraIO-Community:VideoUIKit-Android:version'
}

Then sync gradle build files. More information on JitPack.

Usage

Once installed, you can add the AgoraVideoViewer from within the context of your MainActivity like so:

// Create AgoraVideoViewer instance
val agView = AgoraVideoViewer(this, AgoraConnectionData("my-app-id"))
// Fill the parent ViewGroup (MainActivity)
this.addContentView(
  agView,
  FrameLayout.LayoutParams(
    FrameLayout.LayoutParams.MATCH_PARENT,
    FrameLayout.LayoutParams.MATCH_PARENT
  )
)

To join a channel, simply call:

agView.join("test", role=Constants.CLIENT_ROLE_BROADCASTER)

Roadmap

VideoUIKits

The plan is to grow this library and have similar offerings across all supported platforms. There are already similar libraries for Flutter, React Native, and iOS, so be sure to check them out.