iOS共享vs操作应用程序扩展
我想实现一个应用程序扩展,但我无法决定是将其实现为共享扩展还是操作扩展 没有说太多的区别,只是:iOS共享vs操作应用程序扩展,ios,ios8,ios8-extension,ios8-share-extension,Ios,Ios8,Ios8 Extension,Ios8 Share Extension,我想实现一个应用程序扩展,但我无法决定是将其实现为共享扩展还是操作扩展 没有说太多的区别,只是: 共享(iOS和OS X):发布到共享网站或与他人共享内容 操作(iOS和OS X;UI和非UI变体):操作或查看源自主机应用程序的内容 是否也存在技术差异(例如,操作扩展是否允许我做共享扩展不允许的事情),或者这仅仅是苹果希望你遵循的惯例,以减少用户对事情的困惑 似乎至少有一个区别是,如果您想要非UI操作,则必须选择操作而不是共享扩展 其他的区别是什么 我正在寻找的事物的示例: 它们都允许我自
- 共享(iOS和OS X):发布到共享网站或与他人共享内容
- 操作(iOS和OS X;UI和非UI变体):操作或查看源自主机应用程序的内容
- 它们都允许我自定义UI吗
- 两者是否都为我提供了一些默认的用户界面
- 他们有相同的权限吗,或者我可以在其中一个和另一个中做更多的事情吗
- 它们是否都从主机应用程序接收相同的输入
- 它们能否将相同的数据发送回主机应用程序
- 图标:共享扩展具有彩色图标
- 图标位置:有些应用程序,如Safari,有大量不可隐藏的活动图标,您的图标将与之竞争
- 用户界面:共享扩展应具有一致的用户界面
- 意图:共享扩展是为了共享内容而保留的,但即使是苹果也违反了这一要求
偶像 共享扩展会得到一个彩色图标,与应用程序的主图标相同。事实上,苹果表示:“如果在共享扩展目标中提供一个单独的图标,Xcode会忽略它。” 操作扩展使用应用图标的“单色版本”或应用图标的“模板图像版本”
图标位置
共享扩展出现在中间行,操作扩展出现在底部行。
根据目标应用程序的不同,您的图标可能会与更多或更少的图标竞争,作为共享与操作的扩展。例如,如果用户主要通过Safari访问您的扩展,则默认情况下,您的应用程序将与其他4个图标竞争,作为共享扩展*,或与其他8个图标竞争作为操作扩展。另一方面,如果您的目标是“地图”应用程序,那么您将与更多图标竞争,将其作为共享扩展(4)而不是操作扩展(2) 因此,为了最大限度地提高您对用户的曝光率,您希望在瞄准Safari时选择共享扩展,而在瞄准地图时选择操作扩展 注意:大多数活动都是由主机应用程序本身使用和API提供的。有一个问题 *显然,共享和活动扩展的数量取决于安装的应用程序以及用户选择显示/隐藏的应用程序 iOS 9.1模拟器的示例:- 联系人:
- 分享(1):邮件
- 活动(0):
- 地图:
- 分享(4):邮件、提醒、推特、Facebook
- 活动(2):添加到收藏夹、打印
- 新闻:
- 分享(4):邮件、提醒、推特、Facebook
- 活动(5):添加到阅读列表、复制、在Safari中打开、报告问题、静音频道
- 照片:
- 分享(4):邮件、推特、Facebook、Flickr
- 活动(6):复制、幻灯片放映、隐藏、分配给联系人、用作壁纸、打印
- 狩猎:
- 分享(4):邮件、提醒、推特、Facebook
- 活动(10):添加到收藏夹、添加书签、添加到阅读列表、添加到主屏幕、添加到共享链接、添加到新闻、复制、打印、在页面上查找、请求桌面站点
- (突出显示的文本):
- 分享(3):邮件、推特、Facebook
- 活动(1):副本
用户界面 默认的共享扩展名模板附带一个子类,用于保持内容的一致性。苹果希望你“尽可能多地在共享扩展中使用系统提供的用户界面。” 动作扩展,另一方面,允许您选择一种动作类型(显示用户界面或无用户界面),前者带有一个空白的UIViewController
违约股份延期;默认显示用户界面操作扩展
意图 尽管苹果声明共享扩展版应“发布到共享网站或与其他人共享内容”,但即使他们通过提醒违反了这一要求 操作扩展旨在“操纵或查看源自主机应用程序的内容。”
相同的事物
- 两者都允许应用程序提供多个版本的扩展。(例如,您的应用程序可以提供两个共享扩展和两个操作扩展。)
- 在我的有限测试中,默认情况下它们都被禁用,用户必须显式点击更多按钮才能启用共享/操作扩展
工具书类
- A:
- B:
- C:
- D:
- E:
[{name:x,author:y}…]
?这当然需要扩展只在books屏幕中可用,并且主机以特定格式导出数据。你能为应用程序分别设置一个(操作和共享)吗?我觉得我好像在什么地方读过这个答案,但我已经回到了文档中,我找不到它。可用性呢?iOS向后兼容性?还有为什么有些应用程序只显示一个r