我将下载的PDF文件保存到设备上的临时目录中,并获取生成文件的URL:
file:///Users/colinbasnett/Library/Developer/CoreSimulator/Devices/A057DDAD-B116-424B-8383-442321530EEC/data/Containers/Data/Application/A0AEF93A-5B1D-4CB4-B39F-F6DFECEDD9E9/tmp/FF5C09A9-45CD-454E-B55A-4F5CEBFEBC7F-24875-000014B657DC6436/23659.pdf
fileURL
是表示上述路径的有效NSURL
对象,我称之为:
UIApplication.sharedApplication().openURL(fileURL)
没有任何反应。
尽管如此,以下调用返回true
:
UIApplication.sharedApplication().canOpenURL(fileURL) // returns true
理想情况下,这将在Safari或任何首选的浏览器应用程序中打开。有趣的是,我可以手动打开Safari,将该目录粘贴到地址栏中,然后就可以显示PDF。
我使用的是Swift 2.2(由于依赖关系尚未升级,因此无法切换到3)。
答案 0 :(得分:1)
我认为问题在于openURL()
想要启动一个单独的应用程序,但是您传递的是指向沙箱中文件的file:
网址。我怀疑UIDocumentInteractionController
可能更像你所追求的。