2013-09-26 38 views
0

我有一个应用程序声明自定义文件类型(这只是一些XML),当iOS在iOS 5上遇到此文件时,它知道如何处理它 - 我的应用程序启动并且文件导入很好。在...中打开自定义文件类型适用于iOS 5,6和7,但不适用于iOS 4

但是,在iOS 4.3.3上,自定义文件类型似乎被认为是纯文本 - 电子邮件客户端显示它,并且不提供在我的应用程序中打开文件的选项。

这里是我的应用程序的Info.plist的相应部分:

<key>CFBundleDocumentTypes</key> 
<array> 
    <dict> 
     <key>CFBundleTypeName</key> 
     <string>iBlueSky Format</string> 
     <key>LSHandlerRank</key> 
     <string>Owner</string> 
     <key>LSItemContentTypes</key> 
     <array> 
      <string>uk.co.tenero.ibluesky</string> 
     </array> 
    </dict> 
</array> 

<key>UTExportedTypeDeclarations</key> 
<array> 
    <dict> 
     <key>UTTypeConformsTo</key> 
     <array> 
      <string>public.data</string> 
     </array> 
     <key>UTTypeDescription</key> 
     <string>iBlueSky File</string> 
     <key>UTTypeIdentifier</key> 
     <string>uk.co.tenero.ibluesky</string> 
     <key>UTTypeTagSpecification</key> 
     <dict> 
      <key>public.filename-extension</key> 
      <array> 
       <string>bsky</string> 
      </array> 
      <key>public.mime-type</key> 
      <string>application/xml</string> 
     </dict> 
    </dict> 
</array> 

任何人能发现我在做什么错?

支持操纵这样的文件来自iOS 3.2,所以它应该工作。

我打算在下一个主要更新中放弃对iOS 4,5 & 6的支持,但我希望在旧设备上为用户提供一个具有此功能的更多发行版。

+0

您是否对iOS 4上有多少用户有一些分析? – Wain

+0

目前不是 - 我评估了一些分析解决方案,但没有找到我完全满意的一个(有毒的T&C,缺少的功能等) –

+0

不是说它解决了这个问题,但似乎不太可能需要支持iOS 4。 – Wain

回答

0

发现问题。我需要将该应用定义为文件类型编辑器的所有者。在更高版本的iOS上,似乎将您的应用定义为拥有者足以暗示编辑角色:

<key>CFBundleDocumentTypes</key> 
<array> 
<dict> 
<key>CFBundleTypeRole</key> 
<string>Editor</string> 
相关问题