我正在使用众所周知的HTML 5
方法来捕获和上传支持最新智能手机的图片。这是我的代码:
<input id="attach-file" type="file" accept="image/*" capture="camera">
在我关心的所有设备上都能很好地工作。
问题是:
在Android上,您捕获的文件会自动保存到图库中。我在一个隐私和安全非常关键的应用程序中实现这一点。我们无法将文件保存到用户设备。有没有人知道阻止OS
自动保存图片的方法?
答案 0 :(得分:0)
无法阻止保存。
在Web应用程序中,客户端是沙盒,出于安全原因,您无法控制网站范围以外的任何内容。
但是,您可以尝试此解决方案(它不适用于所有设备):
<input>
和getUserMedia
来自己实现相机捕获,而不是使用<canvas>
标签。<input>
方法用作备用方法(以防最终用户设备不支持getUserMedia
)。此方法将要求用户允许访问相机,但由于捕获的内容已保存在内存中,因此不会保存在用户的设备上。
另外,如果需要将结果保存到服务器,则必须将画布转换为数据URI,然后将数据URI转换为Blob,然后通过AJAX使用multipart / form-data上载该blob。
我建议Google“ html5 camera getusermedia”以获得更多信息。