为什么我的 WKWebviews 在模拟器上可以运行,但无法在 iPad 上提取文件?
Why do my WKWebviews work on the simulator, but are unable to pull up the files on the iPad?
我正在使用 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")
}
}
由于没有人能够回答这个问题,我自己也很困惑,我发现使用 UIDocumentPicker 是一种更简单、更干净的查看 pdf 文件的方式。我还能够使用本机共享按钮,而不是我自己硬编码的按钮。
我正在使用 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")
}
}
由于没有人能够回答这个问题,我自己也很困惑,我发现使用 UIDocumentPicker 是一种更简单、更干净的查看 pdf 文件的方式。我还能够使用本机共享按钮,而不是我自己硬编码的按钮。