Installation
Install the Client SDK for your target platform before creating a session.
Platform Requirements
| Platform | Minimum Version | Required Permissions |
|---|---|---|
| Android | SDK 23 (Android 6.0) | INTERNET, RECORD_AUDIO |
| iOS | iOS 15.0 | Microphone usage (NSMicrophoneUsageDescription in Info.plist) |
| Web | Modern browsers with WebRTC support (Chrome 70+, Firefox 60+, Safari 14.1+, Edge 79+) | Microphone access (prompted via browser) |
Warning: Version pinning in production
The examples below use latest.release (Android) and @latest (CDN) for simplicity. In production applications, always pin to a specific version (e.g., com.vonage:client-sdk-voice:2.3.1 or @vonage/client-sdk@2.3.1) to ensure reproducible builds and avoid unexpected breaking changes on upgrade. Check the Changelog for release notes before upgrading.
NPM
Install with your package manager of choice:
Then import the Client SDK:
import clientSDK from '@vonage/client-sdk';
CDN
<script src="https://cdn.jsdelivr.net/npm/@vonage/client-sdk@latest/dist/vonageClientSDK.min.js"></script>
Microphone access
The browser will prompt the user for microphone permission when a call is initiated. No manifest or configuration is needed, but the page must be served over HTTPS (or localhost) for getUserMedia to be available.
- Ensure Maven Central is available in your repositories:
dependencyResolutionManagement {
repositories {
mavenCentral()
}
}
- Add the Voice SDK dependency:
dependencies {
implementation("com.vonage:client-sdk-voice:latest.release")
}
- Add required permissions to your
AndroidManifest.xml:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
You must also request RECORD_AUDIO at runtime before making or answering calls (Android 6.0+).
CocoaPods
Add the Client SDK to your Podfile:
target 'YourApp' do
use_frameworks!
pod 'VonageClientSDKVoice'
end
Swift Package Manager
- In Xcode, select File -> Add Package Dependencies...
- Use
https://github.com/Vonage/vonage-client-sdk-ios - Choose your version rule and add the package to your target
Linker Flag
Set -ObjC in your target's Build Settings -> Other Linker Flags (Debug and Release).
Microphone Permission
Add the microphone usage description to your Info.plist:
<key>NSMicrophoneUsageDescription</key>
<string>Required for voice calls</string>
Without this entry, iOS will terminate your app when the SDK requests microphone access.