es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

getUserMedia notallowederror: permiso denegado

Um… cuando uso ‘getUserMedia’ en mi teléfono, obtengo un error

desde alert(e)) notallowederror: permiso denegado

¿Qué debo hacer?

Es parte del código index.js (donde ocurre el video y el chat)…

async function getMedia(deviceId) {
  const initialConstraints = {
    audio: true,
    video: { facingMode: 'user' }
  };

  const cameraConstraints = {
    audio: true,
    video: { deviceId: { exact: deviceId } }
  };

  try {
    myStream = await navigator.mediaDevices.getUserMedia(
      deviceId ? cameraConstraints : initialConstraints
    );
    myFace.srcObject = myStream;

    if (!deviceId) {
      await getCameras();
    }
  } catch (e) {
    console.log(e);
    alert(e);
  }
}

Estoy usando una aplicación Rails (web), react-native (aplicación webview), node.js (para chat en tiempo real y videollamadas como Zoom mediante socket.io WebRTC).

Lo ejecuté en la aplicación webview (híbrida), y no está funcionando (funciona bien en el navegador pero…)

Así que investigué y agregué las opciones…


video autoplay="" webkit-playsinline="webkit-playsinline" playsinline="playsinline" muted="true" id="myFace" width="350" height="400"

y el padre de la etiqueta de video es un iframe, y tiene atributos como allow=”camera;microphone;autoplay” y así sucesivamente…

También agregué las opciones de expo webview, como…


return useWebkit
allowInlineMediaPlayback={true}
mediaPlaybackRequiresUserAction={false}
javaScriptEnabled={true}
javaScriptEnabledAndroid
geolocationEnabled={true}

Soy principiante… ¿me puedes ayudar? ¡Gracias!

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que el mensaje de error “permiso denegado” está relacionado con los permisos de la cámara y/o el micrófono. Debería comprobar si su aplicación tiene los permisos necesarios para utilizar estas funciones en su dispositivo móvil. Normalmente, puede comprobar y gestionar los permisos de la aplicación en la configuración de su dispositivo.

    Además, puede intentar añadir los permisos y opciones necesarias a su código, como ya mencionó. Asegúrese de que la etiqueta de vídeo y su marco padre tienen los permisos y opciones correctas establecidos. También puede intentar añadir los permisos necesarios explícitamente en su código utilizando la API navigator.permissions.

    Si el problema persiste, es posible que necesite depurar aún más su código y comprobar si hay otros errores o problemas que puedan estar causando el problema. También puede intentar probar su aplicación en diferentes dispositivos y entornos para ver si el problema es específico de su configuración actual.

Comments are closed.