gpt4 book ai didi

iphone - 如何一起使用 NSUbiquitousKeyValueStore 和 NSUserDefaults

转载 作者:行者123 更新时间:2023-12-03 16:06:46 25 4
gpt4 key购买 nike

文档并不清楚如何在边缘情况下使用 NSUbiquitousKeyValueStore

如果我想设置一个值,我知道我应该为 NSUserDefaultsNSUbiquitousKeyValueStore 设置一个值,因为 iCloud 可能会被禁用。然而,在我的测试中,即使 iCloud 被禁用,[NSUbiquitousKeyValueStore defaultStore] 也会返回一个有效的对象(在 Mac OS 上测试)。

此外,据我了解,如果启用了 iCloud,NSUbiquitousKeyValueStore 的值将存储到磁盘(并且可以离线使用)。如果您确定数据少于 64KB,那么使用 NSUserDefaults 的原因是什么?

最佳答案

我正在使用 http://blog.mugunthkumar.com/coding/ios-code-mkicloudsync-sync-your-nsuserdefaults-to-icloud-with-a-single-line-of-code/

这是一个由 Mugunth Kumar 编写的简单类(谢谢!),可以为您完成工作...除非您有特殊需要,添加一行代码,它将完成对 iCloud 的所有读取和写入...您需要做的就是像往常一样读取和写入 NSUserDefaults...

编辑:

小心,如果您从 NSUserDefaults 中删除一个项目,我上面链接的代码将不会从云中删除该项目。每当您从 NSUSerDefaults 中删除项目时,请对 NSUbiquitousKeyValueStore 执行相同的操作,如下所示:

NSUbiquitousKeyValueStore* keyValueStore=[NSUbiquitousKeyValueStore defaultStore];
[keyValueStore removeObjectForKey: yourKey];

关于iphone - 如何一起使用 NSUbiquitousKeyValueStore 和 NSUserDefaults,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8070253/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com