将NSTreeNode存储为CKRecordValueStore到cloudkit

问题描述 投票:0回答:1

有没有办法将NSTreeNode存储为CKRecordValueStore到cloudkit。

objective-c macos icloud cloudkit
1个回答
0
投票

不是直接的。 CKRecordValue仅支持一些预定义类型,不支持自定义类型(请参阅https://developer.apple.com/documentation/cloudkit/ckrecordvalue?language=objc)。

您必须找到一种方法将树结构映射到一堆这些类型,并编写自己的序列化/反序列化逻辑。

最终的CKRecordValue类型是NSData,这意味着您将树存储为具有所需结构的二进制BLOB。

这取决于哪个结构最好的任务。例如,如果您已经知道如何将树转换为JSON,则最简单的方法是将其作为NSString或NSData上载。

© www.soinside.com 2019 - 2024. All rights reserved.