为啥我的 WKWebviews 在模拟器上工作,但无法在 iPad 上提取文件?

Posted

技术标签:

【中文标题】为啥我的 WKWebviews 在模拟器上工作,但无法在 iPad 上提取文件?【英文标题】:Why do my WKWebviews work on the simulator, but are unable to pull up the files on the iPad?为什么我的 WKWebviews 在模拟器上工作,但无法在 iPad 上提取文件? 【发布时间】:2019-03-08 13:12:54 【问题描述】:

我正在使用 WKWebview 显示本地文件,它在设备模拟器上完美运行。但是,当我启动应用程序时,它们的文件是可用的——如果文件存在,我会检查它并打印出路径,但是 webviews 无法将其拉起。稍后我使用该文件中的数据通过电子邮件发送它,该功能效果很好。

这是在 WKWebView 上打开本地文件的代码:

 func loadPDF()
    let path = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0] as String
    let url = NSURL(fileURLWithPath: path)
    if let pathComponent = url.appendingPathComponent("Survey-\(pdf.fileTitle!).pdf") 
        let filePath = pathComponent.path
        let fileManager = FileManager.default
        if fileManager.fileExists(atPath: filePath) 
            print("FILE AVAILABLE")
            print(filePath)
            let newURL = URL(fileURLWithPath: filePath)
            let request = URLRequest(url: newURL)
            pdfView.load(request)
         else 
            print("FILE NOT AVAILABLE")
            print(filePath)
        
     else 
        print("FILE PATH NOT AVAILABLE")
    


【问题讨论】:

【参考方案1】:

由于没有人能够回答这个问题而且我自己也很困惑,我发现使用 UIDocumentPicker 是一种查看我的 pdf 文件的更简单、更干净的方式。我还可以使用本机共享按钮,而不是我自己硬编码的那个。

【讨论】:

以上是关于为啥我的 WKWebviews 在模拟器上工作,但无法在 iPad 上提取文件?的主要内容,如果未能解决你的问题,请参考以下文章

为啥 XCode 说我的 iPhone 应用程序只能在 iPad 上运行?

为啥我的应用没有在安卓模拟器上运行?

为啥应用内购买方法可以在模拟器上完美运行,但不能在真实设备 iOS 6 上运行?

科尔多瓦应用程序为啥我可以在 ios 上播放我的媒体但在 android 上失败?

为啥我的备用图标可以在 iPhone 上工作,但不能在 iPad 上工作?

为啥我的模拟器上看不到 XML 元素?