[英]open file from local file system with default application iOS
我已經從服務器下載了一些文件並存儲到本地文件系統中。 我想使用設備中的默認應用程序打開它們。 如何使用默認應用程序打開文件。 請提供一些示例代碼。
謝謝
首先,您需要使用NSURL對象表示資源 ( 要打開的下載文件 )。 以下內容假設一個名為filePath的NSString已使用要打開的資源的路徑進行了初始化。
NSURL *resourceToOpen = [NSURL fileURLWithPath:filePath];
然后最好先檢查是否有一個可以打開資源的應用程序。
BOOL canOpenResource = [[UIApplication sharedApplication] canOpenURL:resourceToOpen];
最后,如果上述行返回yes,則打開資源。
if (canOpenResource) { [[UIApplication sharedApplication] openURL:resourceToOpen]; }
我從UIApplication類引用中引用以下有關實例方法canOpenURL的內容:
此方法保證如果調用openURL:,將啟動另一個應用程序來處理它。 它不保證完整的URL有效。
但是,如果您希望向用戶顯示已使用該文件類型的相應UTI注冊的應用程序列表,則可以執行以下操作:
UIDocumentInteractionController *documentController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:filePath]];
documentController.delegate = self;
[documentController presentOpenInMenuFromRect:CGRectZero inView:self.view animated:YES];
您必須實現UIDocumentInteractionControllerDelegate協議。 同樣,對於已知文件類型,系統應在不設置UTI屬性的情況下解決UTI屬性的正確分配。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.