Get started with the Contact Center SDK for Android

The Contact Center SDK for Android lets users engage with agents directly through video and chat without leaving your app.

Requirements

  • Android 8.0+
  • Android Studio
  • Supported architectures: as of SDK version 3.3.0, arm64-v8a or armeabi-v7a; SDK version 3.2.0 or earlier, arm64-v8a, armeabi-v7a, x86, or x86_64.
  • A Contact Center license and an entry ID, used to start a video or chat flow.
  • Since the Contact Center SDK is built on our Video SDK, your Contact Center SDK needs to be at least version 4.11.0 and will need to be updated at least every nine months.

Download the Contact Center SDK for Android

If you don't already have at least one registered app, follow these steps to create an app and download the SDK files.

  1. Sign in to your developer account on the Zoom App Marketplace.
    • Go to [Zoom App Marketplace](https://marketplace.zoom.us/?ampDeviceId=cf401538-835f-45ce-a7f1-1035e348c982&SessionId=1771892802618&DeviceId=625144c2-ec06-4362-b16c-c4a652d544b5&SessionId=1785855378806) and select **Sign in** at the top right corner.
    • Select the blue **Developer** link in the lower left corner, under the lefthand navigation. If you don't see the link, verify that you have the correct permissions.
  2. On the **Created apps** page, select the blue plus sign in the upper left corner next to the word **Developer**.
  3. Select **Build App > General app**, and then select **Create**.
  4. Go to **Features** and select **Embed**.
  5. On the **Embed** page, enable **Contact Center SDK**.
  6. Under the **Contact Center SDK** section, configure the settings as appropriate for your app.
  7. To download the SDK files, select the platform **Android**. This page displays available SDK versions for the selected platform, along with links to their corresponding release notes.
  8. Finally, select the **Download** button.

If you already have at least one registered app, follow these steps to download the SDK files using your existing app.

  1. Sign in to your developer account on the Zoom App Marketplace.
    • Go to [Zoom App Marketplace](https://marketplace.zoom.us/?ampDeviceId=cf401538-835f-45ce-a7f1-1035e348c982&SessionId=1771892802618&DeviceId=625144c2-ec06-4362-b16c-c4a652d544b5&SessionId=1785855378806) and select **Sign in** at the top right corner.
    • Select the blue **Developer** link in the lower left corner, under the lefthand navigation. This takes you to the **Created Apps** page. If you don't see the link, verify that you have the correct permissions.
  2. On the **Created Apps** page, select your SDK app to open its configuration pages.
  3. Go to **Features** and select **Embed**.
  4. On the **Embed** page, go to the **Contact Center SDK** section.
  5. To download the SDK files, select the platform **Android**. This page displays available SDK versions for the selected platform, along with links to their corresponding release notes.
  6. Finally, select the **Download** button.

Install

The Contact Center SDK zip file - with a name like android-zccsdk-X.X.X.zip - contains 5 folders and a text file.

  • cci - contains the Contact Center SDK module with build.gradle and cciSDK.aar files
  • mobilertc - contains the Video SDK module with build.gradle and mobilertc.aar files
  • video-effects - contains the Video SDK module for blur effects with build.gradle and video-effects.aar files
  • zm-annoter- contains the Video SDK module for video annotation function with build.gradle and zm-annoter.aar files
  • sample - contains the sample code project
  • version.txt - contains the Contact Center SDK version code

The settings.gradle file shows how to import the cci module, the mobilertc module, the video-effects module, and the zm-annoter module.

include ':app'
// include mobilertc if using a content center video entry
include ':mobilertc'
project(':mobilertc').projectDir = new File(settingsDir, '../mobilertc')
include ':cci'
project(':cci').projectDir = new File(settingsDir, '../cci')
// include video-effects if need blur effects in your video call
include ':video-effects'
project(':video-effects').projectDir = new File(settingsDir, '../video-effects')
// include zm-annoter if need annotation function in your video call
include ':zm-annoter'
project(':zm-annoter').projectDir = new File(settingsDir, '../zm-annoter')

The app-level build.gradle file shows how to implement the cci module, the mobilertc module, the video-effects module, and the zm-annoter module.

  1. Unzip the android-zccsdk-X.X.X.zip file, and open the sample project in Android Studio. The cci module, the mobilertc module, the video-effects module, and the zm-annoter module should automatically be imported. To learn how to import the Contact Center SDK into your project, look at the sample project.

  2. To add the packaging, enable viewBinding on the cci module. If you don't want to enable viewBinding, add dependencies.add("default","androidx.databinding:viewbinding:7.3.1") in the cci/build.gradle file.

    android {
    compileSdk 36
    namespace 'us.zoom.cc.sample'
    defaultConfig {
        // minSdk version should be >= 28
        minSdk 28
        targetSdk 36
    }
    // cci module and mobilertc module share the same libs
    packaging {
        jniLibs {
            pickFirsts += [
                'lib/*/libzReflection.so',
                'lib/*/libc++_shared.so',
                'lib/*/libcrypto_sb.so',
                'lib/*/libssl_sb.so',
                'lib/*/libzoom_util.so',
                'lib/*/libcmmlib.so',
                'lib/*/libzlib.so',
                'lib/*/libcurl.so'
            ]
        }
    }
         compileOptions {
            sourceCompatibility JavaVersion.VERSION_17
            targetCompatibility JavaVersion.VERSION_17
        }
        kotlinOptions {
            jvmTarget = '17'
        }
    	// if you don't want to enable viewBinding, please add dependencies.add("default","androidx.databinding:viewbinding:7.3.1") into the cci/build.gradle
        buildFeatures{
            buildConfig = true
            viewBinding true
            }
        }
    dependencies {
    	//...
        implementation project(':cci')
        //implementation mobilertc if using a content center video entry
        implementation project(':mobilertc')
        // implementation video-effects for blur background
        implementation project(path: ':video-effects')
        // implementation zm-annoter for video annotation
        implementation project(path: ':zm-annoter')
    }
    

    The project-level build.gradle declares the plugins required by the build system itself. For Android 16 (API level 36), upgrade the Android Gradle Plugin (AGP) to 8.x. Refer to this project-level build.gradle configuration.

    buildscript {
        dependencies {
            classpath "com.android.tools.build:gradle:8.10.0"
        }
    }
    
  3. In the proguard-rules.pro file, keep all Contact Center SDK related classes.

    -keep class us.zoom**{
        *;
    }
    -keep interface us.zoom**{
        *;
    }
    -keep class org.webrtc**{
        *;
    }
    -keep class com.zipow**{
        *;
    }
    
  4. In the MyApplication class in MyApplication.kt, initialize the Contact Center SDK.

    public class MyApplication extends Application {
        @Override
        public void onCreate() {
            super.onCreate();
            ZoomCCInterface.INSTANCE.init(getApplicationContext(),"User Name");
        }
    }
    
    ```kotlin
    

    class MyApplication:Application() { override fun onCreate() { super.onCreate() ZoomCCInterface.init(getApplicationContext(), "User Name") } }

  5. Optional To change the user name, call ZoomCCInterface.setContext. If you don't want to init with the user name, change the user name before calling service.fetchUI.

    ZoomCCInterface.INSTANCE.setContext(new ZoomCCContext("User Name"))
    
    ```kotlin
    

    ZoomCCInterface.setContext(ZoomCCContext("User Name"))

  6. In the AndroidManifest.xml file, set up the application.

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools">
        <application
            android:name=".MyApplication">
        </application>
    </manifest>