【问题标题】:Ionic 3: File_URI Not allowed to load local resource IOSIonic 3: File_URI 不允许加载本地资源 IOS
【发布时间】:2017-07-04 16:53:28
【问题描述】:

我正在使用相机拍摄图像并进行预览。它需要被发送到服务器,所以我使用“FILE_URI”的目标类型。当我在 android 上运行它时它可以工作,但我在 ios 10.3.1 上运行它时遇到此错误

不允许加载本地资源:file:///var/mobile/Containers/Data/Application/2CE518F3-4F4E-42A9-94E1-DC06D01250C7/tmp/cdv_photo_001.jpg

我没有使用 -lc 标签运行它。编码类型为JPEG

【问题讨论】:

标签: ios image cordova ionic-framework camera


【解决方案1】:

我遇到了同样的问题,我意识到在 iOS 相机插件中返回带有新捕获协议的源,但是在您的 HTML 中使用它来设置像 img 或 video 这样的元素的源时,您需要删除协议......所以我做到了:

if (isIos()) {
  itemSrc = itemSrc.replace(/^file:\/\//, '');
}

如果您想将捕获移动到其他地方恢复协议或事先制作副本或其他任何东西

希望对你有帮助

【讨论】:

  • 这修复了 iOS 问题,并且在应用于 Android 时也不会导致任何问题。谢谢!
【解决方案2】:

我在 livereload 模式下运行应用程序并遇到同样的问题,我尝试了this answer,从 livereload 更改为正常模式解决了问题。

它应该对你有帮助,就像帮助我一样,至少现在是这样。

【讨论】:

    【解决方案3】:

    使用此path = normalizeURL(path); 并阅读有关WKWebView 的更多信息

    【讨论】:

    • 此解决方案在您使用 FILE_URI 目标类型时有效。
    【解决方案4】:

    使用 ionic webview 2.4.1+,你必须使用window.Ionic.WebView.convertFileSrc(url);,见https://stackoverflow.com/a/54416951/1805493

    【讨论】:

      猜你喜欢
      • 2019-02-02
      • 2021-05-26
      • 2018-10-16
      • 1970-01-01
      • 2016-10-08
      • 2016-11-04
      • 1970-01-01
      相关资源
      最近更新 更多