我正在編寫一個需要識別我的自定義MIME類型的應用程序,以便當從服務器下載此類文件時,我的應用程序將啓動。我閱讀了關於如何在iOS下編寫一個MIME類型識別器的偉大文章How do I associate file types with an iPhone application?,它運行良好當且僅當該文件的擴展名也在我的plist的UTExportedTypeDeclarations/UTTypeTagSpecification
部分中指定,並且服務器提供這些文件具有相同的擴展名。如果服務器上的文件擴展名不同供應,或者如果在plist中沒有指定擴展但的MIME類型匹配時,會發生以下情況:在iOS上識別我的沒有文件擴展名的MIME類型
瀏覽器(或接收到該文件的應用程序)示出了使用正確的[在myApplication中打開]按鈕更正我的文件類型的圖標,但單擊該按鈕不會執行任何操作,我的應用程序未啓動,如果它正在運行,則不會發送application:openURL:sourceApplication:annotation:
消息。
有沒有什麼辦法可以根據MIME類型編寫文件類型識別器,而不需要特定的文件擴展名?
恐怕你誤解了這個問題。我正在系統中註冊一個新的MIME類型,並希望系統將這些文件(通過瀏覽器下載,郵件附件等)轉發給我,即使只知道他們的MIME類型,並且擴展名不是。 – MrTJ
因此,如果它是您的文件,您是否可以不使用自定義擴展名創建文件,以便在安裝應用程序時進行註冊? – SeeCoolGuy
是的,這可能是iOS的解決方案,但我必須與不同的系統(具有其他平臺的移動客戶端,服務器基礎設施和HTTP等)合作,並且擺脫傳遞文件擴展名的必要性也是非常有用的。 – MrTJ