2012-02-01 197 views
0

我想我的應用程序添加到打開菜單中的大多數文件類型,但我不希望我的應用程序可以作爲一個觀衆或編輯。我只是希望它可以作爲類似於Dropbox的接收器。目前我已經添加了幾個文件類型,並宣佈他們爲CFBundleTypeRole瀏覽器,並與PDF文件它的偉大工程,但是,與其他文件,如Word文檔,它試圖用我的應用程序來查看文檔,絕不會交出的文件發給我的應用。任何和所有的想法/建議/任何幫助。 謝謝!如何添加應用程序,以「打開方式」菜單中的iOS

+0

可能重複[?我如何文件類型與iPhone應用程序相關聯(http://stackoverflow.com/questions/2774343/how-do-i-associate-file- types-with-an-iphone-application) – Ryan 2012-02-01 23:10:28

+0

「試圖使用我的應用程序查看文檔」是什麼意思?在iOS上的所有情況下,它都應該簡單地將文檔複製到應用程序的沙箱中,並將URL傳遞給應用程序。 PDF和您正在嘗試處理的其他文檔之間會發生什麼不同? – 2012-02-01 23:37:46

+0

在一個點上它試圖用我的應用程序中我所相信的是快速查找框架預覽,這是我的電子郵件中的Word文檔。顯然它墜毀了。 :P但是我的info.plist中的代碼解決了它。 – TChadwick 2012-02-02 16:04:49

回答

3

在MonoTouch中,你將要添加一個文件類型,命名CFBundleTypeName無論你想,在我的情況下,我把它叫做「所有文件」。然後我就LSHandlerRank設置爲備用,最後我添加了名爲LSItemContentTypes一個數組,並添加public.content(具體處理文件蘋果文檔),最後一個條目的字符串值CFBundleTypeRole作爲瀏覽器。所有這些都輸入到我的info.plist代碼中:

<key>CFBundleDocumentTypes</key> 
    <array> 
     <dict> 
      <key>CFBundleTypeName</key> 
      <string>All Docs</string> 
      <key>CFBundleTypeRole</key> 
      <string>Viewer</string> 
      <key>LSHandlerRank</key> 
      <string>Alternate</string> 
      <key>LSItemContentTypes</key> 
      <array> 
       <string>public.content</string> 
      </array> 
     </dict> 
    </array> 

希望這可以幫助別人!

參考: http://developer.apple.com/library/ios/#documentation/Miscellaneous/Reference/UTIRef/Articles/System-DeclaredUniformTypeIdentifiers.html#//apple_ref/doc/uid/TP40009259-SW1

相關問題