【问题标题】:Loading document in shared documents folder into WKWebView将共享文档文件夹中的文档加载到 WKWebView
【发布时间】:2017-02-07 22:07:38
【问题描述】:

当文档已使用 iTunes 文件共享添加到应用程序时,我在尝试将文档加载到 WKWebView 时遇到问题。

如果我在应用程序中包含该文件,我可以正常加载它。

我正在使用此代码来获取加载文件:

let documentsURL = try! FileManager().url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: true)
let fooURL = documentsURL.appendingPathComponent(docFileName)
let docURL = URL(fileURLWithPath: fooURL.path)
let req = URLRequest(url:docURL)
docView!.load(req)

docURL 如下所示: file:///var/mobile/Containers/Data/Application/432E716E-F70D-4985-814C-FFE7ECE53EF8/Documents/filename.pdf

我已尝试使用此代码检查文件是否存在:

FileManager().fileExists(atPath: fooURL.path)

这返回真。我也尝试将文件从文档文件夹复制到应用程序文件夹,但这会返回找不到文件的错误(即使在检查文件存在之后也是如此)

WKWebView 应该能够从这个位置加载吗?还是我在这里遗漏了什么?

【问题讨论】:

  • 运气好能找到解决这个问题的方法吗?如果是这样,您可以发布您所做的答案吗?

标签: ios swift


【解决方案1】:

也许你正在寻找loadFileURL(_:allowingReadAccessTo:)

虽然我没有在文档中看到明确说明,但如果 WKWebView 的安全策略妨碍了您,我也不会感到惊讶,并且仅此方法的存在似乎证实了这一点 ;-)

编码愉快!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-25
    相关资源
    最近更新 更多