【问题标题】:iOS 8 Beta 5 Safari Multiple Photo UploadiOS 8 Beta 5 Safari 多张照片上传
【发布时间】:2014-08-26 16:25:34
【问题描述】:

我们有一个移动网络应用程序,它使用 html 输入标签进行一些照片上传,如下所示:

<input type='file' accept='image/* name='takeMult[]'/>.  

这适用于所有以前的 iOS Safari 版本(6.0 及更高版本)。有其他人在 Beta 中看到过这个吗?我们将它包装在一个 jquery 小部件中,这可能是问题所在,因为在 iOS 8 beta 上已经注意到 jquery mobile 存在问题,但我认为它们已在最新的 beta 中得到修复。如下从查询小部件中删除它也失败了:

<input type='file' multiple='multiple'>

不再允许选择多张照片。对话框出现,它不会让你选择图像。有没有人有解决方法或听说移动 safari 或照片/文件输入有任何变化?

编辑: 我已经在多台设备和 xCode 6 上的 iOS 8 Beta 模拟器上确认了此问题。我已就该问题向 Apple 提交了错误报告。 Beta 6 仅发布给运营商,因此没有消息是否在该版本中修复。如果有人在Apple没有解决问题的情况下有解决方法,仍然希望得到一些反馈。

【问题讨论】:

  • 相同的基本问题(iOS 文件系统),不同的场景。

标签: javascript jquery html ios8 photos


【解决方案1】:

解决方法是在文件输入元素中省略multiple 属性。当然,这会阻止您一次选择多个文件,但这总比不能选择任何文件要好。

iOS7 中还有另一个较老的错误,也与multiple 属性有关。在这种情况下,当设置此属性时,视频文件上传请求将为空(0 大小)。不要打赌这会在 iOS8 发布之前得到修复。

【讨论】:

  • Ray:我遇到的处理单个文件上传的最常见方法是使用 Filereader() javascript 对象。由于苹果更改文件系统架构的方式,这在设备上也失败了。我知道你提到的视频错误。您是否尝试过使用带或不带 filereader() 对象的单张照片上传?
  • FileReader 不用于上传文件,仅用于在客户端读取其内容,如果您只打算上传文件,则不需要。我怀疑您在谈论 File API。用户选择的文件通过文件输入的files 属性作为File 对象可用。这在 iOS8 中不会改变。
  • 是的,抱歉,我不清楚。在 ios8 beta5 safari 中使用 File API 读取单个文件时,filereader 对象返回文件对象不可读。
  • iOS8 GM 中的文件处理完全被破坏了。 Apple 很可能不会在此时发布之前修复。
  • 是的,这个问题只影响 Safari,而不是专门影响 UIWebView。 blog.fineuploader.com/2014/09/10/…
【解决方案2】:

更新:Apple 昨天发布了 iOS 8.0.2 并修复了上传错误。

在 iOS 8.0 上,单个或多个文件的所有文件上传都失败。在 Mobile Safari 中上传的所有文件都返回 0 大小 [1]。

希望 Apple 在下一个版本中解决此问题。似乎它并没有影响主屏幕网络应用程序:

文件上传失败!!每个文件上传都不起作用,您可以选择一个文件或拍照,然后 JavaScript 将不会获取任何数据,以及通过 HTML 或 XMLHttpRequest 上传的 POST 上传的服务器。该问题似乎不适用于主屏幕网络应用。

来源:http://www.mobilexweb.com/blog/safari-ios8-iphone6-web-developers-designers

[1]http://blog.fineuploader.com/2014/09/10/ios8-presents-serious-issues-that-prevent-file-uploading/

【讨论】:

  • 感谢您的确认。在过去的几周里,我们解决了所有这些问题。不过,您的源代码对于移动 Web 应用程序开发来说是一个很好的资源。
  • @EricHyde 不用担心。如果您还没有看到,Apple 发布了 iOS 8.0.2,修复了 Mobile Safari 中的文件上传问题!
  • 是的,我做到了!再次感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-21
  • 1970-01-01
  • 2018-03-20
  • 2013-06-01
  • 1970-01-01
相关资源
最近更新 更多