Доступ к камере через браузер

Мы создаем веб-сайт HTML5 для мобильных устройств и вам необходимо получить доступ к камере через веб-браузер, не являясь родным приложением. У нас возникают проблемы с этой работой в iOS. Кто-нибудь знает о решении для этого?

Ответ 1

Вы можете попробовать следующее:

<input type="file" capture="camera" accept="image/*" id="cameraInput" name="cameraInput">

но для должен быть iOS 6 +. Это даст вам приятный диалог для вас, чтобы выбрать либо сделать снимок, либо загрузить его с вашего альбома i.e.

Screenhot

Пример можно найти здесь: Захват данных камеры/изображения без PhoneGap

Ответ 2

По состоянию на 2015 год он теперь просто работает.

<input type="file">

Это запросит у пользователя загрузку любого файла. На iOS 8.x это может быть видео камеры, фотография камеры или фото/видео из библиотеки фотографий.

iOS/iPhone photo/video/file upload

<input type="file" accept="image/*">

Это как указано выше, но ограничивает загрузку фотографий только с камеры или библиотеки, без видео.

Ответ 3

В iOS6 Apple поддерживает это с помощью тега <input type="file">. Я не смог найти полезную ссылку в документации разработчика Apple, но здесь есть пример здесь.

Похоже, что наложения и более расширенные функции пока недоступны, но это должно работать во многих случаях использования.

EDIT: В w3c есть спецификация, что iOS6 Safari, похоже, реализует подмножество. Атрибут capture заметно отсутствует.

Ответ 4

Я думаю, что это работает. Запись видео или аудио;

<input type="file" accept="video/*;capture=camcorder">
<input type="file" accept="audio/*;capture=microphone">

или (новый метод)

<device type="media" onchange="update(this.data)"></device>
<video autoplay></video>
<script>
  function update(stream) {
    document.querySelector('video').src = stream.url;
  }
</script>

Если это не так, вероятно, будет работать на ios6, более подробную информацию можно найти на получить пользовательские носители

Ответ 5

Приложение Picup - это способ сделать снимки со страницы HTML5 и загрузить их на ваш сервер. Для этого требуется некоторое дополнительное программирование на сервере, но, помимо PhoneGap, я не нашел другого способа.

Ответ 6

Этому вопросу уже несколько лет, но за это время появились некоторые дополнительные возможности, такие как прямой доступ к камере, отображение предварительного просмотра и создание снимков (например, для сканирования QR-кода).

Эта статья для разработчиков Google содержит подробное объяснение всех (?) Способов переноса данных изображений/камер в веб-приложение, от "работать везде" (даже в настольных браузерах) до "только работать" на современных, современных мобильных устройствах с камерой ". Наряду со многими полезными советами.

Объясненные методы:

  • Запросить URL
  • Ввод файла (здесь рассматривается большинство других сообщений)
  • Перетаскивание (полезно для настольных браузеров)
  • Вставить из буфера обмена
  • Доступ к камере в интерактивном режиме (необходим, если приложение должно мгновенно реагировать на то, что оно "видит", например на QR-коды)