我想阻止用户访问他们自己的文件系统,即。相机胶卷和移动设备上的视频。强迫他们捕捉现场媒体。这可能吗?如果是这样,我将如何实现这个?
答案 0 :(得分:2)
在支持HTML5的设备上,您可以使用(如果支持)userMedia
API。
以下an excellent tutorial可帮助您入门。
基本上,你可以这样做:
<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下的设备部分支持userMedia
API。
如果您的设备支持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>