CreateBlogSupport
Log inSign up
Home
Webex Calling
  • Guides
  • Webex Calling Beta
  • Webex Cloud Calling
  • Broadworks Calling
  • UCM Calling
  • AI Assistant for Developers
  • Troubleshoot the API
  • Beta Program
  • Webex Status API

Webex Calling

Integrate the SDK

The Webex Android SDK is available through Maven. Follow the instructions below to integrate the SDK into your application.

anchorAdd the Maven Repository

anchor

Insert the following Maven repository into your project-level build.gradle:

allprojects {
    repositories {
        maven {
            url 'https://devhub.cisco.com/artifactory/webexsdk/'
        }
    }
}

anchorSelect the SDK Variant

anchor

The Mobile Android SDK is available in two variants:

  • Webex-Wxc SDK: Optimized for size. Suitable if your app only uses Webex Calling.
  • Full SDK: Includes meetings, messaging, and supports UCM calling along with Webex Calling.
Use the Full SDK

In your module-level build.gradle, add the Full SDK as a dependency:

dependencies {
    implementation 'com.ciscowebex:webexsdk:3.16.2'
}
Use the Webex-Wxc SDK

In your module-level build.gradle, add the size-optimized Webex-Wxc SDK as a dependency:

dependencies {
    implementation 'com.ciscowebex:webexsdk-wxc:3.16.2'
}

anchorAndroid SDK v3.16+ Permission Behavior Changes

anchor

From Android SDK v3.16 onwards, runtime permission handling is app-owned:

  • The SDK does not include dangerous permissions in the library manifest.
  • The SDK does not show permission dialogs.
  • Your app must declare required permissions and request them at runtime before SDK operations.
  • If permissions are missing, SDK APIs return WebexError.ErrorCode.PERMISSION_REQUIRED and include missing permissions in error.data.

The SDK also includes support for 16 KB memory page size on Android; no app code change is required for that part.

Common calling permissions
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.CAMERA" />
Runtime permission check example
val required = listOf(Manifest.permission.RECORD_AUDIO)
val missing = required.filter {
    ContextCompat.checkSelfPermission(ctx, it) != PackageManager.PERMISSION_GRANTED
}

if (missing.isNotEmpty()) {
    // requestPermissions(missing.toTypedArray(), REQ_CODE)
    return
}

webex.phone.dial(address, MediaOption.audioOnly()) { result ->
    // Handle result. If permission is missing, SDK returns PERMISSION_REQUIRED.
}
In This Article
  • Add the Maven Repository
  • Select the SDK Variant
  • Android SDK v3.16+ Permission Behavior Changes

Connect

Support

Developer Community

Developer Events

Contact Sales

Handy Links

Webex Ambassadors

Webex App Hub

Resources

Open Source Bot Starter Kits

Download Webex

DevNet Learning Labs

Terms of Service

Privacy Policy

Cookie Policy

Trademarks

© 2026 Cisco and/or its affiliates. All rights reserved.