2016-10-04 11 views
0

我保存下載的PDF文件到設備上的臨時目錄,並有結果文件的網址:的OpenURL在臨時目錄中的本地文件不做任何

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

我還沒試過,但是這篇文章(http://useyourloaf.com/blog/openurl-deprecated-in-ios10/)表示openURL已經在iOS 10中被棄用了。那是你正在運行的地方嗎?他們有代碼顯示你需要做什麼(儘管在Swift 3中,你需要將其轉換回2.2)。 – Michael

+0

不,我在Xcode 7.3上的iPad 2模擬器上運行它,所以它不模擬iOS 10設備。 –

回答

1

我認爲問題在於openURL()想要啓動一個單獨的應用程序,但是您傳遞的是指向您沙箱中的文件的file: URL。我懷疑UIDocumentInteractionController可能更適合你。

+0

好點 - Safari無法看到應用程序文件夾。 – Michael

+0

明天工作時我會試試這個。 –

相關問題