在包含应用程序和自定义键盘的 iOS8 之间共享图像

Posted

技术标签:

【中文标题】在包含应用程序和自定义键盘的 iOS8 之间共享图像【英文标题】:Sharing images between iOS8 containing app and Custom Keyboard 【发布时间】:2014-08-13 22:41:34 【问题描述】:

在包含应用程序和自定义键盘之间发送图像的最佳方式是什么? 有苹果谈论的最佳实践吗? 苹果会讨厌一种骇人听闻的方式吗? 是否已经有人在 github 中构建了一个框架来帮助这个? 谢谢!

【问题讨论】:

为什么你不开始赏金,或者如果你找到了你的解决方案,那么请在这里发布 你找到比使用 NSUserDefaults 更好的解决方案了吗? 【参考方案1】:

您可以将图像保存在NSUserDefaults,参见Save images in NSUserDefaults?。由于您可以通过键盘和应用程序访问NSUserDefaults,因此它可以正常工作。在Can a custom keyboard extension identify a user of my companion application in any way? 中查看我的答案。

请注意,为了启用默认容器的共享,您必须遵循 Apple 在App Extensions programming guide 中的文档。

这是一个非常简单有效的解决方案,但我只推荐用于图标等一些非常小的图像...不要将NSUserDefaults 用作相机照片的存储库!

如果您想做更复杂的数据共享,我认为自定义键盘可能不是正确的结构。

【讨论】:

以上是关于在包含应用程序和自定义键盘的 iOS8 之间共享图像的主要内容,如果未能解决你的问题,请参考以下文章

iOS8 自定义键盘在不请求开放访问的情况下访问用户默认值

自定义 iOS 键盘在没有完全访问权限的情况下访问容器

在包含应用程序和扩展程序之间共享领域

如何在iOS8自定义键盘中使用自动更正和快捷列表?

我可以为我的应用禁用自定义键盘 (iOS8) 吗?

键盘 Swift 上的自定义键