2011-07-24 39 views
6

我正在使用UIDocumentInteractionController在另一個應用程序DropBox中打開文件。UIDocumentInteractionController在沒有選項的特定應用程序中打開文件

我想要做的是在另一個特定的應用程序中打開文件,但我只管理到目前爲止顯示支持的應用程序,並允許用戶選擇。

UIDocumentInteractionController *udi = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath: jpgPath]]; 
[udi retain]; 
CGRect r = CGRectMake(0, 0, 300, 300); 
[udi presentOpenInMenuFromRect:r inView:self.view animated:YES]; 

這提供了一個支持的應用程序列表,但我想直接用Dropbox打開文件,沒有選項框。有任何想法嗎?

回答

1

我很高興能夠相互抵觸,但我認爲這是不可能的(至少包括iOS 4在內)。

在另一個應用程序中打開文件的正常方式是使用自定義URL方案。 (請參閱UIApplication類參考中的openURL文檔以及iOS應用程序編程指南中的Implementing Custom URL Schemes)。據我所知,Dropbox尚未實現自定義URL方案。而且,鑑於此,這種方法是封閉的。

UIDocumentationController非常不透明。你可以哄它進入telling you whether or not there is any application on the device that will open your file。但目前尚不清楚你可以做其他事情。

+0

如果我們談論的Instagram?它有instagram://方案,但我不知道任何正常的方式來傳遞圖像。 –

+0

有iOS 5可能爲我們添加了什麼?我找不到任何東西,但認爲我會問,如果有人有! – strawtarget

0

如果你想提供打開文件在一個特定的應用程序,只需添加(使用SWIFT 3.0):

docController.uti = @"com.dropbox.ios"; 
相關問題