Videollamadas con WebView y PeerJS en Android | de Shaik Ahron | diciembre 2022

En este mundo digital, queremos estar conectados con nuestros amigos y familiares. La demanda de aplicaciones de videollamadas aumenta día a día. Podemos desarrollar aplicaciones que nos mantengan conectados WebRTC.El flujo del artículo:

  1. ¿Qué son WebRTC y PeerJS?
  2. Conceptos básicos de WebRTC.
  3. Desarrollo de una app de videollamadas con Peer.js y WebViews en Android.

WebRTC representa Comunicación web en tiempo real. La tecnología WebRTC lo ayuda a intercambiar video, audio y cualquier dato con colegas. WebRTC es compatible con navegadores web y dispositivos nativos para dispositivos nativos, debe agregar bibliotecas webrtc.PeerJS es simplemente un envoltorio alrededor de la implementación de webrtc del navegador, y con él podemos agregar soporte de transmisión de video y audio muy fácilmente. Abstrae todo el trabajo pesado que tenemos que hacer. Usaremos vistas web para llamar a nuestro propósito JavaScript código y renderizado HTML.WebRTC funciona estableciendo conexiones punto a punto utilizando una variedad de protocolos.

  1. señalización: El proceso de señalización ayuda a establecer y controlar la sesión de comunicación. señalización utilizada partido socialdemócrata(Protocolo de descripción de sesión) Protocolo que está en formato de texto sin formato y contiene datos sobre. a) Ubicaciones de los pares (dirección IP de los pares). b) tipo de medio
  2. Conectar: En WebRTC, las conexiones se realizan de igual a igual, no cliente-servidor. Puede ser difícil conectar dos pares debido a incompatibilidades. Este problema de conexión se puede solucionar utilizando los servidores ICE, TURN y STUN. a). HIELO representa Edificio de conectividad interactiva. Ayuda a encontrar la forma óptima de conectar dos pares para que la transferencia de datos pueda realizarse de manera óptima.b). ATURDIR representa Utilidades de cruce de sesión para NAT. Es un método estándar utilizado por NAT transversal. El cliente WebRTC le pide al servidor STUN que obtenga la dirección IP pública c). GIRO representa Transversal con relés alrededor de NAT. Si no es posible utilizar STUN. entonces los servicios deben enrutar los flujos de medios a través de ese servidor.
  3. Intercambio seguro de datos: Webrtc garantiza la seguridad. Encripta los datos intercambiados entre pares. Utiliza dos protocolos SRTP y DTLS.a). SRTP representa Protocolo de transporte seguro en tiempo real. Es una versión segura de RTP. El protocolo proporciona encriptación, confidencialidad, autenticación de mensajes y protección de reproducción para su tráfico de audio y video transmitido.b). DTL representa Seguridad de la capa de transporte de datagramas. DTLS es un protocolo utilizado para proteger las comunicaciones basadas en datagramas. La entrega ordenada no está garantizada y tiene menos latencia.
  4. intercambiar datos: Con WebRTC podemos transmitir flujos de datos, audio y video. usamos RTP y RTCP Protocolos para la transmisión de datos.a). RTP representa el Registro de transporte en tiempo real. Ayuda en la transmisión en tiempo real de flujos de medios.b). RTCP representa Registro de control en tiempo real. Los mensajes, que pueden controlar la transmisión y la calidad de los datos, también permiten a los destinatarios enviar comentarios a la fuente. Un protocolo desarrollado para este propósito es RTCP.

Comencemos a trabajar en ello.Aquí está el GitHub atajo.Paso 1: Cree un nuevo proyecto de Android.Paso 2: tienes que agregar 4 archivos a tu proyecto AndroidAquí está atajo.En este punto necesita agregar archivos.VideoCallDemo/app/src/main/assets/Paso 3: Debe agregar estos permisos Manifiesto.xml.Yo uso esta dependencia para Manejo de permisos en Jetpack Composing.implementación «com.google.accompanist:permisos de acompañante:0.27.1»Paso 4: Creamos un archivo XML para usar vista web.Ahora agregaremos el nuestro XML archivo a nuestro componiblepaso 5: Ahora cree una interfaz de usuario para el Micrófono, video y fin Llamada telefónica.Paso 6: Ahora el VideollamadaComponerBueno, como puedes ver, hay un método al que vamos a llamar llamar a la función de JavaScript () Con esto llamamos a métodos js como alternar audio, cambiar de vídeo, iniciarLlamary separado.Nosotros cargamos la llamar.html Archivo en webView. Debe aprobar Identificación única a en el interior() método javascript. tienes que llamar iniciarllamada() método Javascript y pasar el Identificación única del par remoto para esto, debe almacenar UniqueId en un backend y obtener esa identificación desde allí. Por el bien de la simplicidad. No lo guardaré en el backend ya que el propósito principal es mostrar el uso vista web y peer.js en android.Usando la interfaz de usuario.Primero, haga clic en Haz espacio. se generará uno Identificación única.Bueno, escribe en el campo de texto del segundo teléfono ID de compañero y haga clic Entrar en la habitación. No agregué validación en la interfaz de usuario. Por lo tanto, intente agregar la identificación correcta.Únete/crea una sala ahora.Como puede ver, me he conectado a dos dispositivos y las videollamadas funcionan.Gracias por leer.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.