通过浏览器访问相机

时间:2011-06-13 21:31:52

标签: ios html5 camera

我们正在为移动设备创建一个HTML5网站,并且需要通过网络浏览器访问相机而不是本机应用。我们在iOS中无法完成这项工作。有人知道这个解决方案吗?

6 个答案:

答案 0 :(得分:122)

你可以试试这个:

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

必须是iOS 6 + 才能正常工作。这将为您提供一个很好的对话,让您选择拍照或从您的专辑上传一张照片,即

Screenhot

可以在这里找到一个例子: Capturing camera/picture data without PhoneGap

答案 1 :(得分:29)

截至2015年,现在 正常运作

<input type="file">

这将要求用户上传任何文件。在iOS 8.x上,这可以是相机视频,相机照片或照片库中的照片/视频。

iOS/iPhone photo/video/file upload

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

如上所述,但仅限于从相机或库中上传到照片,不限制视频。

答案 2 :(得分:25)

在iOS6中,Apple通过<input type="file">标记支持此功能。我在Apple的开发者文档中找不到有用的链接,但有一个例子here

看起来像叠加层和更高级的功能尚不可用,但这应该适用于很多用例。

编辑:The w3c has a spec that iOS6 Safari seems to implement a subset of.明显缺少capture属性。

答案 3 :(得分:10)

我认为这个有效。 录制视频或音频;

<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,可以在get user media找到更多详细信息

答案 4 :(得分:4)

Picup应用是一种从HTML5页面拍摄照片并将其上传到服务器的方法。它需要在服务器上进行一些额外的编程,但除了PhoneGap之外,我还没有找到另一种方法。

答案 5 :(得分:0)

这个问题已经存在了几年,但在那个时候,一些额外的可能性已经发展,比如直接访问相机,显示预览和捕捉快照(例如,用于QR码扫描)。

这篇Google Developers文章深入解释了所有(?)如何将图像/相机数据导入Web应用程序的方法,从“无处不在”(即使在桌面浏览器中)到“仅工作”在现代,最新的移动设备与相机“。以及许多有用的提示。

解释方法:

  • 要求提供网址
  • 文件输入(此处大多数其他帖子涵盖)
  • 拖放(适用于桌面浏览器)
  • 从剪贴板粘贴
  • 以交互方式访问相机(如果应用程序需要提供有关“看到”内容的即时反馈,则需要这些内容,如QR码)