Visión general
En esta guía aprenderás a añadir el Client SDK a tu aplicación Android.
Requisitos previos
El Client SDK requiere un nivel de API de Android mínimo de 23.
Para añadir el Client SDK a su proyecto
Abra su proyecto Android
Abra el código base de su proyecto Android en su IDE.
Añadir dependencias
El Client SDK de Vonage en Android se distribuye como 3 SDK separados. com.vonage.client-sdk-voice para la funcionalidad de voz dentro de la aplicación, com.vonage.client-sdk-chat para la funcionalidad de mensajería dentro de la aplicación, y combinado como com.vonage.client-sdk.
com.vonage.client-sdk-chat no incluye la dependencia de WebRTC, por lo que es una biblioteca más pequeña. Solo debes utilizar un SDK a la vez en tu aplicación.
In-app Voice y In-App Messaging - instalar
com.vonage.client-sdksólo.In-App Voice - instalar
com.vonage.client-sdk-voicesólo.In-App Messaging - instalar
com.vonage.client-sdk-chatsólo.
Aviso de caducidad del producto
A partir del 30 de abril de 2026, Vonage In-App Messaging dejará de estar disponible. Se cerrará el acceso para nuevos usuarios y se interrumpirá el servicio para todos los usuarios existentes.
Si tiene alguna pregunta sobre la retirada de este producto, póngase en contacto con su gestor de Account o con nuestro equipo de asistencia.
NOTA: Hay dos lenguajes utilizados para definir los scripts de construcción de Gradle - Groovy (build.gradle ) y Kotlin Gradle Script (build.gradle.kts ). Un proyecto Kotlin-Android puede seguir utilizando Groovy como lenguaje para los scripts de compilación. Comprueba la extensión del archivo para determinar el idioma de los archivos de script de compilación.
Ahora añade el Client SDK a tu proyecto. Añade la siguiente dependencia en el nivel de tu aplicación build.gradle (normalmente app/build.gradle):
dependencies {
implementation 'com.vonage:client-sdk:1.6.0'
}
Puede que necesite aumentar la asignación de memoria para la JVM editando el archivo org.gradle.jvmargs propiedad en su gradle.properties archivo. Recomendamos que sea de al menos 4 GB:
org.gradle.jvmargs=-Xmx4096m -Dfile.encoding=UTF-8
Establecer Java 1.8
Establezca Java 1.8 en el nivel de su aplicación build.gradle o build.gradle.kts (normalmente app/build.gradle o app/build.gradle.kts):
android {
// ...
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
// Only for Kotlin projects
kotlinOptions {
jvmTarget = JavaVersion.VERSION_1_8.toString()
}
}
Añadir permisos
Para utilizar las funciones In-App Voice, añade permisos de audio mediante el siguiente procedimiento:
- Añada los permisos necesarios al
AndroidManifest.xmlarchivo:

<manifest ...>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
</manifest>
Permisos de tiempo de ejecución
- Para los dispositivos que ejecutan Android versión 6.0 Marshmallow (nivel de API 23) o superior, debe solicitar la aplicación
RECORD_AUDIOen tiempo de ejecución:
// this is the current activity
val callsPermissions = arrayOf(Manifest.permission.RECORD_AUDIO)
ActivityCompat.requestPermissions(this, callsPermissions, 123)
- Para los dispositivos que ejecutan la versión 12 de Android (nivel de API 31) o superior, también debe solicitar la aplicación
READ_PHONE_STATEen tiempo de ejecución:
// this is the current activity
val callsPermissions = arrayOf(Manifest.permission.RECORD_AUDIO, Manifest.permission.READ_PHONE_STATE)
ActivityCompat.requestPermissions(this, callsPermissions, 123)
Más información sobre la solicitud de permisos de ejecución en Android aquí.
Normas ProGuard
Opcionalmente, si utilizas ProGuard, deberás configurar la herramienta para que omita el Vonage Client SDK. No se recomienda reducir y/u ofuscar el Vonage Client SDK y podría causar conflictos con otras bibliotecas. La configuración recomendada de ProGuard es:
-keep class org.webrtc.** { *; }
-keep class org.vonage.** { *; }
-keep class com.vonage.** { *; }
La configuración anterior obliga a mantener el código fuente del Vonage Client SDK tal como está, al tiempo que permite reducir el tamaño del resto de la aplicación. El compilador realiza automáticamente un conjunto de optimizaciones por defecto, pero es posible habilitar optimizaciones adicionales que pueden requerir que incluyas reglas ProGuard adicionales para evitar problemas en tiempo de ejecución. Puede hacerlo añadiendo lo siguiente en el archivo de propiedades gradle del proyecto:
android.enableR8.fullMode=true
Para obtener más información sobre cómo optimizar su aplicación Android, consulte la página oficial de Documentación sobre Android.
Uso del Client SDK en su aplicación
Una vez instalado el Client SDK y solicitados los permisos de audio, ya puede empezar a utilizarlo.
Crear una sesión
Las sesiones son un flujo de comunicación en vivo entre el Client SDK y los servidores de Vonage. Crear una VoiceClient y, a continuación, crear una sesión con un usuario JWT simbólico.
var client = VoiceClient(this.application.applicationContext)
client.createSession("JWT_TOKEN") { error, sessionId ->
...
}
Si la creación de la sesión se realiza correctamente, recibirá un identificador de sesión.
Estado de la sesión
Si se produce algún error con la sesión después de que se haya creado correctamente, lo recibirá en la pantalla SessionErrorListener en el VoiceClient objeto.
client.setSessionErrorListener { reason ->
//Reason for error
}
Conclusión
Ha añadido el Client SDK a su aplicación Android y ha creado una sesión. Ahora puede utilizar la función VoiceClient en su aplicación y utilice las funciones del Client SDK.
Ver también
- Configuración del centro de datos - esta es una configuración opcional avanzada que puede llevar a cabo después de añadir el SDK a su aplicación.