iOS8上的应用扩展限制

时间:2014-10-07 09:26:49

标签: cordova ios8 xcode6 ios8-extension

最近,我一直在对iOS 8共享扩展进行简单的研究,以了解系统的工作原理并找出这些功能的限制。 我意识到目前的文件https://developer.apple.com/library/ios/documentation/General/Conceptual/ExtensibilityPG/index.html只是一份初步文件。 我对iOS8 app扩展的一般限制/可能性有一些疑问:

  • 是苹果指定共享数据的一些大小限制?
  • 我可以100%确定只有我的应用可以启动指定的应用扩展程序吗?
  • 会支持app扩展吗?

1 个答案:

答案 0 :(得分:0)

对于您的第二个问题,我们无法100%确定只有您的应用可以在完全由用户控制的指定应用扩展程序上启动 但我们可以按照Declaring Supported Data Types for a Share or Action Extension

控制您要在哪些文档中展示您的应用扩展程序

在关键NSExtensionActivationRule下为写谓词设置自定义文档类型 例如:对于pdf,image和excel文档,我使用最大文档量为1的谓词。

<key>NSExtension</key>
<dict>
    <key>NSExtensionAttributes</key>
    <dict>
        <key>NSExtensionActivationRule</key>
        <string>SUBQUERY (
            extensionItems,
            $extensionItem,
            SUBQUERY (
            $extensionItem.attachments,
            $attachment,

            (
                       ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "com.adobe.pdf"
                    || ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.image"
                    || ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.plain-text"
                    || ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.png"
                    || ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.jpeg"
                    || ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.jpeg-2000"
           || ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "com.microsoft.excel.xls"
           || ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO   "org.openxmlformats.spreadsheetml.sheet"
            )
).@count == $extensionItem.attachments.@count
).@count == 1</string>