Este complemento Flutter es un envoltorio para Agora Video SDK
Agora.io proporciona bloques de construcción para que agregue comunicaciones de voz y video en tiempo real a través de un SDK simple y poderoso. Puede integrar el SDK de Agora para habilitar las comunicaciones en tiempo real en su propia aplicación rápidamente.
Nota: La rama
maines la base de actualización principal en el SDK 4.x nativo de Agora, que introduce algunos cambios de descanso. Lanzamientos anteriores Consulte las siguientes ramas (la versión <6.0.0):
- 5.x
Para usar este complemento, agregue agora_rtc_engine como dependencia a su archivo pubspec.yaml.
Agora Video SDK requiere permiso Camera y Microphone para iniciar una videollamada.
Para obtener la última configuración de permiso, consulte la documentación en https://docs.agora.io/en/video-calling/get-started/get-started-sdk?platform=android#project-setup
Consulte los permisos del dispositivo requeridos del archivo androidManifest.xml.
< uses-permission android : name = " android.permission.INTERNET " />
< uses-permission android : name = " android.permission.READ_PHONE_STATE " />
< uses-permission android : name = " android.permission.RECORD_AUDIO " />
< uses-permission android : name = " android.permission.CAMERA " />
< uses-permission android : name = " android.permission.MODIFY_AUDIO_SETTINGS " />
< uses-permission android : name = " android.permission.ACCESS_WIFI_STATE " />
< uses-permission android : name = " android.permission.ACCESS_NETWORK_STATE " />
<!-- The Agora SDK requires Bluetooth permissions in case users are using Bluetooth devices. -->
< uses-permission android : name = " android.permission.BLUETOOTH " />
<!-- For Android 12 and above devices, the following permission is also required. -->
< uses-permission android : name = " android.permission.BLUETOOTH_CONNECT " />Para obtener la última configuración de permiso, consulte la documentación en https://docs.agora.io/en/video-calling/get-started/get-started-sdk?platform=ios#project-setup
Abra la Info.plist y agregue:
Privacy - Microphone Usage Description y agregue alguna descripción a la columna Value .Privacy - Camera Usage Description y agregue alguna descripción a la columna Value . El
agora_rtc_enginepara Web se encuentra actualmente en la etapa alfa, y la documentación está incompleta y solo se ha probado en la web de escritorio en este momento.La web
agora_rtc_enginese basa en IRIS_WEB, un contenedor para la web Agora SDK 4.x. Esto ayuda a alinear las API nativas de SDK (Android/iOS/MacOS/Windows) a través de la agora web SDK 4.x. Tenga en cuenta que la Web Agora_RTC_Engine utiliza la web Agora SDK 4.x debajo, por lo que solo se puede implementar un subconjunto de las API SDK nativas en la web. Si las API devuelvenAgoraRtcExceptioncon un código de error-4, esto significa que estas API no son compatibles en este momento.
Descargue el artefacto iris_web (consulte el enlace a continuación) e incluya como una etiqueta <script /> en su archivo <your-project>/web/index.html . Por ejemplo:
Estructura de proyectos
<your-project>
|__web
|__index.html
|__iris-web-rtc_<x.y.z>.js
<!-- <your-project>/web/index.html -->
<!DOCTYPE html >
< html >
...
< body >
...
< script src =" iris-web-rtc_<x.y.z>.js " > </ script >
</ body >
</ html >Descargar: https://download.agora.io/sdk/release/iris-web-rtc_n450_w4220_0.8.6.js
Para fines de prueba
Puede depender directamente de la AGora CDN para fines de prueba:
<!-- <your-project>/web/index.html -->
<!DOCTYPE html >
< html >
...
< body >
...
< script src =" https://download.agora.io/sdk/release/iris-web-rtc_n450_w4220_0.8.6.js " > </ script >
</ body >
</ html >Nota : Esta característica requiere
agora_rtc_engine> = 6.3.0
Debido a las limitaciones de rendimiento, la implementación directa de características avanzadas como el procesamiento de datos sin procesar de video y audio actualmente no es factible en el lado de Flutter.
Le permitimos crear un RtcEngine dentro de Flutter utilizando el mango nativo del RtcEngine (Android) o AgoraRtcEngineKit (iOS) del SDK nativo AGORA RTC. Este enfoque permite que su aplicación utilice directamente las características avanzadas del SDK nativo AGORA RTC a través del paquete agora_rtc_engine , cerrando la brecha entre las capacidades nativas y el entorno de Flutter.
Más detalles, verifique el ejemplo de ProcessVideorawData para referencia.
Si experimenta problemas con iOS que no funcionan en modo de lanzamiento, es posible que deba establecer la configuración a continuación para evitar los símbolos de despojo.
Consulte la documentación de Flutter para obtener más información.
Si tiene algún problema o sugerencia con respecto a los proyectos de muestra, no dude en presentar un problema o extraer una solicitud.
Para ayudar a trabajar en este SDK, consulte Contriping.MD.
El proyecto está bajo la licencia MIT.