iOS 共享扩展不适用于图像网址

2024-03-20

我有一个使用这些规则的共享扩展:

<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>

它非常适合普通网站和图像,但我无法像这样解析图像网址:(http://www.zappos.com/images/z/3/3/5/4/0/3/3354034-p-2x.jpg http://www.zappos.com/images/z/3/3/5/4/0/3/3354034-p-2x.jpg)。我厌倦了添加其他规则,但当我使用 Safari 打开此网站并单击共享时,我的共享扩展程序仍然不会出现。

但如果我将规则设置为 TRUEPREDICATE,我的共享扩展就可以解析该网站。

我做错了什么? 谢谢


你没有做错什么,只是因为Apple定义的公共键(如下图)不能包含所有情况。

对于您的情况,您必须按照 Apple 的建议编写自己的 NSPredicate String :声明共享或操作扩展支持的数据类型 https://developer.apple.com/library/ios/documentation/General/Conceptual/ExtensibilityPG/ExtensionScenarios.html#//apple_ref/doc/uid/TP40014214-CH21-SW8

我像这样改变了苹果的例子:

<key>NSExtensionAttributes</key>
    <dict>
        <key>NSExtensionActivationRule</key>
        <string>SUBQUERY (
                  extensionItems,
                  $extensionItem,
                   SUBQUERY (
                     $extensionItem.attachments,
                     $attachment,
                     ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.image";
                   ).@count == $extensionItem.attachments.@count
                ).@count == 1
       </string>
    </dict>

你可以改变public.image给任何其他人统一类型标识符 https://developer.apple.com/library/ios/documentation/FileManagement/Conceptual/understanding_utis/understand_utis_conc/understand_utis_conc.html.

Some of the common UTIs are listed below:
enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iOS 共享扩展不适用于图像网址 的相关文章

  • 获取对 iOS 应用程序中最顶层视图/窗口的引用

    我正在创建一个可重用的框架 用于在 iOS 应用程序中显示通知 我希望将通知视图添加到应用程序中其他所有内容的顶部 有点像 UIAlertView 当我初始化监听 NSNotification 事件并添加视图作为响应的管理器时 我需要获取对
  • 如何在 Xcode 4 中在 .h 和 .m 之间切换

    刚刚安装的 Xcode 4 到目前为止一切顺利 除了 Apple 更改了所有键盘快捷键 有人知道如何在 h 和 m 之间切换吗 苹果改变了各种快捷键 但要在标头和实现之间切换 新的快捷键是 You can change it back to
  • CBPeripheral 名称有时为 null

    我正在开发一个应用程序来与蓝牙 LE 外围设备进行通信 我目前正在测试的外围设备是其中之一these http www ti com tool cc2540dk mini 有趣的是 有时当我发现它时 我会得到它的正确名称 SimpleBLE
  • 迁移到 ARC 时如何解决“选择器'performSelector:withObject:afterDelay:'没有已知的实例方法”?

    ARC 迁移工具在开始迁移之前拒绝接受此代码 self delegate performSelector selector overlayDismissed withObject self afterDelay 0 委托被迫使用协议来实现此
  • 如何在 UICollectionView 的节标题中动态添加标签和按钮?

    请帮助我如何水平添加标签和水平添加类似的按钮 但每个按钮应像另一个部分一样在每个标签的下方对齐 这应该在 UICollectionView 的标题中动态发生 因为标签和按钮的数量根据我的数据 我想制作一种 Excel 类型的布局 并在标题中
  • 如何防止 RealmSwift 列表中出现重复项?

    如何防止向列表中添加重复项RealmSwift 我有我的User作为领域对象 但真正的数据源是服务器 只是使用领域在本地缓存用户 当我从服务器获取当前用户数据时 我想确保存储在领域中的用户拥有来自服务器的所有播放列表 以及它们的曲目列表等
  • 在 Flutter 中显示 iOS 的 PDF 内联文件

    我正在 flutter 中专门为 iOS 开发一个应用程序 现阶段 我需要向其中添加 PDF 文件 问题是 flutter 没有原生的方式来显示 PDF 文件 据我研究 由此tread https github com flutter fl
  • 如何在 Swift 3 中解析 JSON 数组 [重复]

    这个问题在这里已经有答案了 我从 Socket 获取了一些我想访问的数据 但收到错误消息 指出每次都无法将 NSArray 转换为 NSDictionary struct SocketEventHandler let event Strin
  • 这个错误是无效上下文0x0吗?

    我在ViewDidLoad中编写了以下代码 Implement viewDidLoad to do additional setup after loading the view typically from a nib void view
  • Swift 3 错误:[_SwiftValue pointSize] 无法识别的选择器发送到实例

    我刚刚将我们的项目迁移到 swift 3 发现由于一个问题导致大量崩溃 由于未捕获的异常 NSInvalidArgumentException 而终止应用程序 原因 SwiftValue pointSize 发送到实例的无法识别的选择器 该
  • 如何检测Retina高清显示屏?

    UIScreen有一个新的 nativeScaleiOS 8 中的属性 但文档没有提及它 property nonatomic readonly CGFloat nativeScale 还有一个scale属性 但文档说它是 2 用于视网膜显
  • PresentModalViewController 不执行任何操作

    我有一个 UIViewController parent 调用presentModalViewController与另一个 UIViewController child on viewDidLoad If parent没有 UINaviga
  • 如何将音乐从我的应用程序切换到 iPod

    我在用MusicPlayerController我的应用程序中的对象来播放音乐 我知道当 iPhone ipod 应用程序终止时 可以继续播放我的应用程序音乐 我该怎么做 这涉及到一些事情 您必须在两种音乐播放器之间进行选择 应用程序音乐播
  • 检查 touchend 是否在拖动后出现

    我有一些代码可以更改表的类 在手机上 有时表格对于屏幕来说太宽 用户将拖动 滚动来查看内容 但是 当他们触摸并拖动表格时 每次拖动都会触发 touchend 如何测试触摸端是否是触摸拖动的结果 我尝试跟踪dragstart和dragend
  • 在 Instruments 中查找内存泄漏行

    我是 iOS 中的仪器新手 我正在尝试使用 Xcode 4 5 2 并按照本教程查找仪器中的内存泄漏 http soulwithmobiletechnology blogspot sg 2011 04 how to check memory
  • Xcode 9 中的“addingPercentEncoding”是否损坏?

    在 Swift 3 x 和 Xcode 9 beta 2 中 使用addingPercentEncoding https developer apple com documentation swift string 1690785 addi
  • 将 iPhone 上的 stderr 写入文件和控制台

    我正在遵循答案中的建议here https stackoverflow com questions 5179108 iphone how to read application logs from device用于将 iOS 设备上的 NS
  • NSPredicate 的 onFormat 字符串

    我想用 id 键对数据进行排序 我如何理解格式字符串的用途NSPredicate格式 我有一个100号的帖子 我的代码 let objectIDs posts map 0 id let predicate NSPredicate forma
  • 退出导航控制器

    我试图离开初始视图控制器 并进入空白视图控制器 这很好 但是这会使空白视图控制器也成为导航控制器的一部分 这不是我想要的 我想脱离视图控制器 在视图控制器中 我尝试退出 它会自行弹出 当我尝试视图中的方法时 将出现目标视图控制器 self
  • KeyboardAvoidingView - 隐藏键盘时重置高度

    我正在使用 React NativeKeyboardAvoidingView设置我的高度View当显示键盘时 但是当我关闭应用程序中的键盘时 视图的高度不会变回原来的值

随机推荐

  • 升级Java后找不到Sun.security

    我有一个使用 Play 2 0 创建的应用程序 我实现了 scribe java 库来使用一些 OAuth 服务 直到今天一切都很好 但是当我升级 jdk 并重新启动服务器时 我无法使用 scribe java 库 似乎它使用了一些类 例如
  • 在 ES6 中创建多个构造函数

    在 ES5 中 可以为一个类创建多个构造函数 同时使用原型保留两个类的公共部分 如下所示 function Book just creates an empty book function Book title length author
  • 无法从本地环境将 Blob 存储上传/下载到容器

    我有一个现有的函数应用程序 它具有从 sftp 下载文件 处理文件并将文件上传到 blob 存储的功能 该功能应用程序已部署在azure中并且运行正常 但是 当我从 Visual Studio 本地 运行相同的操作时 我在将文件上传到 Bl
  • 如何在 Apache Tomcat 启动中创建单例

    我需要在 Apache Tomcat 启动时创建一个单例 以便我可以使用 servlet 访问它们 单例定义 servlet 将给出什么响应 我想知道 tomcat 是否有构造函数 以便我可以添加代码以便创建单例 编辑 经过一番搜索 我发现
  • 如何将分隔字符串 split() 到 List

    我有这个代码 String lineElements try using StreamReader sr new StreamReader TestFile txt String line while line sr ReadLine nu
  • 使用出生日期计算年龄

    我正在开发一个 Android 应用程序 用于从用户提供的出生日期查找年龄 三个编辑文本 一个代表天 另外两个代表月份和年份 我从中得到了代码link http www androidsnippets com calculate age 但
  • es6 承诺吞下类型错误

    我希望浏览器在发生类型错误时显示错误消息 错误如无法读取未定义的属性 or 未定义参考 new Promise function resolve reject do stuff reject something logical is wro
  • 处理随机建筑绘图窗口问题

    我重新发布此内容是因为我第一次发布此内容时代码不正确 我已经把所有的事情都记下来了 看起来像这样 但它应该看起来像这样 任何帮助使窗户与建筑物对齐都会很棒 因为我对此很陌生 谢谢 int buildingHeights new int 12
  • 在数组中搜索匹配的字符串

    我正在寻找方法来检查字符串是否作为数组值存在于数组中是否可能 我将如何使用 PHP 来做到这一点 如果您只是想知道它是否存在 请使用in array http php net manual en function in array php
  • AmbigeousMatchException - Type.GetProperty - C# 反射

    昨天我在开发 Web 部件时遇到了一个问题 这个问题不是关于 webpart 而是关于 C 关于这个问题的背景很少 我有一个使用 Reflection 加载 WebPart 的代码 其中我得到了 AmbigouslyMatchExcepti
  • 酿造服务。无法启动服务。得到“引导失败:5:输入/输出错误”

    running brew services start mongodb community产生 Bootstrap failed 5 Input output error Error Failure while executing bin
  • int(x[base]) 如何工作?

    以下代码的输出是 int 12 5 O P 7 int 0 5 O P 0 int 10 2 O P 2 我无法理解这一点 Python 文档中说 base 部分是可选的 即它可能需要一个或两个参数 第一个参数必须是一个在引号内具有 int
  • 在 Dockercontainer 中安装 MariaDB - 需要 MariaDB Connector/C >= 3.2.4,发现版本 3.1.16

    我尝试构建以下 Dockerfile FROM python 3 10 ENV TZ Europa Berlin install google chrome RUN wget q O https dl ssl google com linu
  • ng-change 不适用于 ng-select

    我正在使用一个由以下内容填充的选择框ng options 不幸的是 我无法得到我的ng change要调用的函数 这是我的小提琴 http jsfiddle net MTfRD 1097 这是我的js var myApp angular m
  • 什么是最好的 UTF [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 使用 Spring Boot 和 Netflix Zuul 的简单反向代理

    我正在寻找使用 Spring Boot 实现一个简单的反向代理 即 轻松添加路线 能够在每个路由的基础上添加自定义身份验证 根据需要添加其他标头 我查看了提供的设施 EnableZuulProxy注释 但它似乎太重量级了 因为我不想使用 E
  • html 表格中的等高缩放单元格

    当我进行此设计时 我在使用 HTML 表格时遇到了一些问题 左侧单元格是 rowspan 2 单元格 右侧两个单元格使用 height 50 属性 以下是预期的行为 Equal height cell 1 Scaling height ce
  • 为什么我的视图右上角有一个“加号”图标?

    我正在尝试为我的应用程序实现拖放功能LazyHGridview 当我尝试将视图放到另一个视图上时 视图的右上角会显示一个绿色圆圈内的 加号 图标 struct TestView View var d GridData Binding var
  • clrscr() 无法在 VC++(VS 2008) 中工作......?

    在 VS 2008 中 我在 VC 中创建了一个空项目 并添加了一个源文件作为 include
  • iOS 共享扩展不适用于图像网址

    我有一个使用这些规则的共享扩展