在阅读了有关扩展的 Apple 文档后,尚不清楚 Action Extensions 是如何呈现给用户的。文档提到了 Bing 翻译用例,在用户点击“共享”按钮后会显示操作。但是如果一个应用程序,比如聊天应用程序,没有分享按钮怎么办?另一个示例是,如果调用应用程序(不是扩展程序的包含应用程序)提供了调用操作扩展程序的选项。
难道只有这两个选项吗?换句话说,如果一个应用缺少一个分享按钮并且没有集成你的扩展,就没有办法呈现一个操作扩展?
在阅读了有关扩展的 Apple 文档后,尚不清楚 Action Extensions 是如何呈现给用户的。文档提到了 Bing 翻译用例,在用户点击“共享”按钮后会显示操作。但是如果一个应用程序,比如聊天应用程序,没有分享按钮怎么办?另一个示例是,如果调用应用程序(不是扩展程序的包含应用程序)提供了调用操作扩展程序的选项。
难道只有这两个选项吗?换句话说,如果一个应用缺少一个分享按钮并且没有集成你的扩展,就没有办法呈现一个操作扩展?
那是对的。操作始终由用户发起,并且始终来自系统提供的 UI。
扩展在 UIActivityViewController 中呈现为可能。宿主应用程序为 UIActivityViewController 提供数据上下文。如果您的扩展程序符合此上下文,它将在列表中可用。
如果有人在没有 UIActivityViewController 的情况下编写应用程序,那么他们将无法使用您的扩展程序。
可能对你有帮助。Apple 提供ImageInverter 的示例代码:Creating Action Extensions
有动作扩展的概念。