2013-02-08 13 views
1

我需要在基于文档的照片编辑器应用程序中访问sidecar XMP文件。 图像文件是文档,当用户打开并保存图像文档时,我需要访问边车XMP文件。在沙盘的应用程序中访问sidecar文件

是否有可能在沙箱中基于文档的应用程序中访问边车文件(如XMP)?

据我所知,默认情况下是不可能的,但是允许的最小临时安全异常是什么?

有没有解决这个问题,而不使用临时异常?

注意,这是不可能保证的图像文件的文件范围的书签到边车(因为它们可能由不同平台上的其他应用程序创建的),所以这种解决方案将无法工作。

回答

2

虽然这个问题很老,但我想我会分享我的解决方案。您可以将应用程序info.plist中的CFBundleDocumentTypes部分的条目添加为NSIsRelatedItemType设置为true。然后,您的沙盒应用程序将能够打开任何文件,用户同意使用同一名称的权限,但具有您列出的扩展名。这里是一个xmp边车文件的例子:

<key>CFBundleDocumentTypes</key> 
<array> 
    <dict> 
     <key>CFBundleTypeExtensions</key> 
     <array> 
      <string>xmp</string> 
     </array> 
     <key>CFBundleTypeName</key> 
     <string>XMP sidecar</string> 
     <key>CFBundleTypeRole</key> 
     <string>None</string> 
     <key>NSIsRelatedItemType</key> 
     <true/> 
    </dict> 
</array> 
相关问题