我希望使用 Xcode 在 macOS 上构建一个基于文档的应用程序,并以 macOS High Sierra 为目标。
NSDocument 是否提供类似于 Pages 的文档协作?Apple 的Document Based Apps page 表明协作是适当的基于文档的应用程序的一项功能,但我还没有看到这个问题的明确答案。
我希望使用 Xcode 在 macOS 上构建一个基于文档的应用程序,并以 macOS High Sierra 为目标。
NSDocument 是否提供类似于 Pages 的文档协作?Apple 的Document Based Apps page 表明协作是适当的基于文档的应用程序的一项功能,但我还没有看到这个问题的明确答案。
最后,通过观看我还没有观看的 WWDC 会议,我找到了通过 Apple 过时文档(看起来已经像一个被遗弃的孤儿)的方法。我可以指出你的问题的答案,因为我也在寻找它。
答案是否定的,NSDocument 或 UIDocument 类不像 Pages 或 Notes 那样提供协作机制。NSDocument 共享方法所做的只是为您提供共享 UI。但你的工作是实现对共享用户操作的协作和 UI 反应。
幸运的是,自从 macOS Sierra SDK 发布以来,这并不是一项非常困难的任务。我的意思是,这仍然不是小菜一碟,但自从 Sierra 和 iOS 10 以来,我们在 CloudKit 框架中拥有了 SKShare 类。这就是我们可以在我们的应用程序中提供协作的方式。这就是 Apple 在其应用程序中实现它的方式。
只需观看 WWDC 2016 的第 226 场会议,您就会了解协作实施背后的想法,甚至还有一些代码示例。这是一个关于这个问题的非常有用的会议。