我有一个使用这些规则的共享扩展:
<dict>
<key>NSExtensionActivationSupportsWebURLWithMaxCount</key>
<integer>1</integer>
<key>NSExtensionActivationSupportsWebPageWithMaxCount</key>
<integer>1</integer>
<key>NSExtensionActivationSupportsImageWithMaxCount</key>
<integer>10</integer>
<key>NSExtensionActivationSupportsText</key>
<integer>1</integer>
</dict>
它非常适用于普通网站和图像,但我无法像这样解析图像 url : ( http://www.zappos.com/images/z/3/3/5/4/0/3/3354034-p-2x.jpg )。我厌倦了添加其他规则,但当我使用 Safari 打开此网站并单击共享时,我的共享扩展仍然不会出现。
但如果我将规则设置为 TRUEPREDICATE,我的共享扩展程序就可以解析该站点。
我做错了什么? 谢谢
最佳答案
基于 wj2061 的回答,以下谓词将获取主机应用程序提供的所有附件。
<key>NSExtensionActivationRule</key>
<string>SUBQUERY (
extensionItems,
$extensionItem,
SUBQUERY (
$extensionItem.attachments,
$attachment,
ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.item" ||
ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.content"
).@count == $extensionItem.attachments.@count
).@count > 0
</string>
关于iOS 共享扩展不适用于图片网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38226283/