Compartir a través de


Añadir SDK de llamadas y chat en una aplicación Android

En este tutorial se describe cómo Contoso puede integrar el SDK de llamadas y chat en una aplicación Android.

Limitación actual

Con versiones del SDK de llamadas de Android anteriores a 2.11.0, crear una aplicación de Android con los SDK de llamadas y chat generaba los siguientes errores:

Duplicate class com.skype.rt.XXX found in modules jetified-azure-communication-calling-1.2.0-runtime (com.azure.android:azure-communication-calling:1.2.0) and jetified-trouter-client-android-0.1.1-runtime (com.microsoft:trouter-client-android:0.1.1)

2 files found with path 'lib/x86/libc++_shared.so' from inputs: - …\.gradle\...-azure-communication-calling-1.2.0\jni\x86\libc++_shared.so - …\.gradle\...-trouter-client-android-9.1.1\jni\x86\libc++_shared.so

Este problema se debió a los archivos de .jar y .so conflictivos incluidos en el paquete del SDK de llamada com.azure.android:azure-communication-calling y un paquete de dependencia transitivo que el paquete del SDK de chat com.azure.android:azure-communication-chat importa, com.microsoft:trouter-client-android.

Solución

A partir de la versión 2.11.0 del SDK de llamadas de Android, Contoso puede integrar los SDK de llamadas y chat dentro de la misma aplicación de Android. Para ello, el SDK de llamadas se basa en com.microsoft:trouter-client-android, similar a la dependencia del SDK de chat en el paquete Trouter y elimina los archivos conflictivos .jar y .so incluidos anteriormente en el SDK de llamadas.

Pasos de implementación

Especifique la versión del SDK de llamadas y chat de Android en el archivo de compilación de Gradle de la aplicación, como se muestra en el ejemplo:

 implementation ('com.azure.android:azure-communication-calling:2.11.0')
 implementation ('com.azure.android:azure-communication-chat:2.0.3') {
     exclude group: 'com.microsoft', module: 'trouter-client-android'
 }

La versión de com.azure.android:azure-communication-chat puede ser cualquiera. La versión de la versión más reciente se usa aquí como ejemplo. Sin embargo, es necesario excluir la versión del paquete Trouter com.microsoft:trouter-client-android incluida con el SDK de chat com.azure.android:azure-communication-chat. Cuando se compila la aplicación, se usará la versión del paquete Trouter incluida por el paquete del SDK de llamada com.azure.android:azure-communication-calling.

Pasos siguientes

El ejemplo de inicio rápido está disponible en GitHub Inicios rápidos de Android en la carpeta Add-Chat-Calling y siga los README.md sobre cómo ejecutar el ejemplo.