0

我想阻止用户访问他们自己的文件系统,即。移动设备上的相机胶卷和视频。迫使他们捕捉现场媒体。这可能吗?如果是这样,我将如何实施?

4

1 回答 1

2

在支持 HTML5 的设备上,您可以使用(如果支持)userMediaAPI。

这是一个很好的教程,可以帮助您入门。

基本上,你可以这样做:

<input type="file" accept="image/*;capture=camera"> <!-- Submit a new photo -->
<input type="file" accept="video/*;capture=camcorder"> <!-- Submit a new video -->
<input type="file" accept="audio/*;capture=microphone"> <!-- Submit a new audio track using the microphone -->

就像我说的,这只有在受支持的情况下才有效。目前,即使是 iOS6 下的设备也部分支持该userMediaAPI。

如果您的设备支持 API,但不支持accept="image/*;capture=camera" ...等等,您可以编写自己的按钮来做同样的事情。

<input type="button" id="newStream" value="Click me!">
<script>
    // Following code adapted from the tutorial, not tested
    document.getElementById('newStream').addEventListener('click', function(event){
        // Not showing vendor prefixes or code that works cross-browser.
        navigator.getUserMedia({video: true}, function(stream){
            // Do something with stream or window.URL.createObjectURL(stream);
            alert('Success!');
        }, function(){ alert('Failed!'); });
    });
</script>
于 2012-12-19T14:41:22.857 回答