关于ios:使用WKWebView上传HTML文件”无法创建沙盒扩展名”

HTML file upload “Could not create a sandbox extension” using WKWebView

在iOS 8应用程序中使用WKWebView时遇到一个奇怪的问题。视图内显示的HTML页面允许上传文件。选择图片后,一切正常-将文件返回到HTML / Javascript,然后我就可以上传它们了。但是,如果我在选择文件时选择了一个视频(.mov),则WKWebView会崩溃。发生这种情况时,将在Xcode中吐出以下内容:"无法为'/var/mobile/Media/DCIM/100APPLE/IMG_0745.MOV创建沙箱扩展名"

任何帮助将非常感激!图像文件可以很好地移交,但视频中断,这似乎很奇怪。


当您尝试从设置了" multiple "属性的<input type="file">上传视频时,Safari中存在一个错误,该错误会使浏览器崩溃。
它已在最新的iOS 8.4版本中修复,但仍会影响WKWebView。

来源:https://github.com/FineUploader/fine-uploader/issues/990

我已经研究了至少3个小时,仅提出了以下3种解决方案:

1。)仅捕获/上Leaflet个视频

1
<input type="file" accept="video/*" capture="camcoder">

2。)捕获/上Leaflet个图像或视频

1
<input type="file" accept="image/*,video/*" capture="camera,camcoder">

3。)直接从图库中选择多个图像

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

前两个输入打开一个系统弹出窗口,询问您是否要捕获文件,或从图库中选择它。第三个将直接进入图库并仅过滤图像,因此您不能选择会导致应用程序崩溃的视频。

如果有人有不同的解决方案,我会全力以赴,并愿意为他买啤酒:D