在我的 iOS 应用程序中,我正在文档目录中创建并保存 PDF,要求是在外部 Google Chrome 应用程序中打开 PDF。
我使用下面的代码重定向到 Chrome 应用程序。
//localPdfUrl =“file:///var/mobile/Containers/Data/Application/44EF2F05-C4FE-4F86-AF0E-C7FE8B0EEA68/Documents/LabelsPdfFinalDoc.pdf”(每次都会更改)
@IBAction func btnOpenInChromeClicked(_ sender: UIButton) {
if let pdfUrl = localPdfUrl {
let chromeURL = "googlechrome://\(pdfUrl)"
let url = URL(string: chromeURL!)
if let url, UIApplication.shared.canOpenURL(url) {
UIApplication.shared.open(url)
}
}
}
但是当我点击按钮时,它会重定向到 Chrome 但无法访问 PDF 文件... 在 Chrome 上找到的网址: 文件///var/mobile/Containers/Data/Application/44EF2F05-C4FE-4F86-AF0E-C7FE8B0EEA68/Documents/LabelsPdfFinalDoc.pdf 它应该是 file:/// 相反,当我手动将其更改为“file:///”时 - 它不是打开 pdf,而是在搜索引擎中搜索关键字。
我认为存储在沙箱中的文件无法从外部访问。 您需要将 pdf 文件上传到云端,获取可访问的 URL 并重定向它,或者使用 iOS PDF 查看器 UIDocumentInteractionController 将其显示在您的应用程序中。