1

Desenvolvi uma aplicação Web. Entretanto, na WebView que eu criei dessa aplicação, quando eu tento fazer upload de arquivos, o código me redireciona para a galeria de imagens ao invés de abrir a câmera do celular.

No meu HTML, eu tenho o seguinte campo:

<input name="localFoto[]" type="file" accept="image/*" capture="camera">

Como faço para resolver?

2
  • 3
    Possível duplicata de Cordova - Câmera não funciona
    – Woss
    Commented 28/12/2018 às 13:04
  • Acho que isso tem pouco a ver com xamarin. Talvez possa encontrar mais ajuda com as tags adequadas, infelizmente também não sei quais seriam para poder sugerir na edição. Commented 13/01/2019 às 2:35

1 Resposta 1

0

Achei a Solução: https://davidwalsh.name/browser-camera

É com JavaScript e HTML testa aí! Achei show de bola nem sabia que tinha como fazer isso.

Caso o Link saia do Ar...

HTML

<!--
    Ideally these elements aren't created until it's confirmed that the 
    client supports video/camera, but for the sake of illustrating the 
    elements involved, they are created with markup (not JavaScript)
-->
<video id="video" width="640" height="480" autoplay></video>
<button id="snap">Snap Photo</button>
<canvas id="canvas" width="640" height="480"></canvas>

JavaScript

// Grab elements, create settings, etc.
var video = document.getElementById('video');

// Get access to the camera!
if(navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
    // Not adding `{ audio: true }` since we only want video now
    navigator.mediaDevices.getUserMedia({ video: true }).then(function(stream) {
        //video.src = window.URL.createObjectURL(stream);
        video.srcObject = stream;
        video.play();
    });
}

/* Legacy code below: getUserMedia 
else if(navigator.getUserMedia) { // Standard
    navigator.getUserMedia({ video: true }, function(stream) {
        video.src = stream;
        video.play();
    }, errBack);
} else if(navigator.webkitGetUserMedia) { // WebKit-prefixed
    navigator.webkitGetUserMedia({ video: true }, function(stream){
        video.src = window.webkitURL.createObjectURL(stream);
        video.play();
    }, errBack);
} else if(navigator.mozGetUserMedia) { // Mozilla-prefixed
    navigator.mozGetUserMedia({ video: true }, function(stream){
        video.srcObject = stream;
        video.play();
    }, errBack);
}
*/

Fonte: https://davidwalsh.name/browser-camera

3
  • Vinicius, eu testei o código acima, porém ele não funciona no Google Chrome do celular e nem no Xamarin.
    – L.Dev1990
    Commented 28/12/2018 às 14:28
  • Tentou descomentando os else if? Commented 28/12/2018 às 14:59
  • Sim. Infelizmente, não funcionou.
    – L.Dev1990
    Commented 28/12/2018 às 16:47

Você deve fazer log-in para responder a esta pergunta.

Esta não é a resposta que você está procurando? Pesquise outras perguntas com a tag .