问题标签 [nsubiquitouskeyvaluestore]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
6391 浏览

iphone - 如何一起使用 NSUbiquitousKeyValueStore 和 NSUserDefaults

文档不清楚如何使用NSUbiquitousKeyValueStore边缘情况。

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

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

0 投票
5 回答
16880 浏览

iphone - NSUbiquitousKeyValueStore 错误:没有有效的 com.apple.developer.ubiquity-kvstore-identifier 权利

我在将 iCloud 与我的应用程序集成时遇到问题。

当我设置测试 iCloud 可用性时,我收到了该功能的成功

但在此之后,当我尝试执行时:

我收到错误

有想法该怎么解决这个吗?我的 App.Entitlements 文件使用默认的宏前缀,自动生成的文件没有任何变化。iCloud 肯定在 iTunes Connect 中的 AppID 上启用。

谢谢。

0 投票
0 回答
711 浏览

iphone - 没有有效的 com.apple.developer.ubiquity-kvstore-identifier 权利

可能重复:
NSUbiquitousKeyValueStore 错误:没有有效的 com.apple.developer.ubiquity-kvstore-identifier 权利

我正在尝试将 iCloud 键值存储与我的应用程序集成。我已通过 Xcode 启用权利,并按照 Apple 文档中概述的步骤为我的应用启用 iCloud。iCloud 集成适用于我的 iPad 2 上的应用程序,但是当我尝试在其他设备上使用相同的功能时,我得到以下信息:

我曾尝试在这些设备上运行临时应用程序,删除清理并在调试模式下重建应用程序,但我仍然遇到相同的错误。我还重新下载了配置文件,删除了设备上的配置文件并重新安装了应用程序,但没有任何结果。我对 entitlements.plist 也没有任何问题。

有人有任何建议来解决这个问题吗?

0 投票
2 回答
3106 浏览

ios - 没有有效的 com.apple.developer.ubiquity-kvstore-identifier 权利 AD HOC iCloud

我在使用 iCloud 键值存储时遇到问题。我目前有一个由 iCloud 同步的核心数据,但我无法让 KV Store 工作我得到:

com.domain.appname 是我的 appid 的格式,为保护隐私而屏蔽。

这已经存在了一段时间,我见过有人遇到这个问题,重新安装应用程序时问题就消失了,但这不适用于我。不知道为什么。

我的权利:

如果您还需要什么就问吧,谢谢!

0 投票
2 回答
324 浏览

iphone - 使用 NSUbiquitousKeyValueStore 类为 xCode 3.2.5 和 xCode 4.3.2 构建 xCode 项目

我在 xCode 4.3.2 上有我的 iPhone 项目,它运行良好。它使用 NSUbiquitousKeyValueStore 类,它的基础 SDK 是 iOS 5.0。现在我要在 xCode 3.2.5 上构建我的项目,它显示错误“未定义的符号 NSUbiquitousKeyValueStore”。当然,我知道 iOS 5.0 支持 NSUbiquitousKeyValueStore 类,而 xCode 3.2.5 不支持 iOS 5.0。所以我想在 iOS 5.0 之前禁用这些功能,并在 iOS 5.0 上启用。我怎样才能做到这一点?

0 投票
2 回答
5608 浏览

ios - 仅使用 NSUbiquitousKeyValueStore 时,如何以编程方式检测用户设备上是否启用了 iCloud?

我正在使用NSUbiquitousKeyValueStore将一些偏好数据同步到 iCloud。我发现如果用户在“设置应用程序”中禁用 iCloud 的“文档和数据”项,NSUbiquitousKeyValueStore则无法将其数据同步到 iCloud。所以,我想先检查一下这个设置是否打开。我找到了这个代码片段:</p>

我想知道的是这是否是唯一的检测方法,即使我只是使用NSUbiquitousKeyValueStore(不是 iCloud 文档存储)。有更好的选择吗?

0 投票
3 回答
230 浏览

objective-c - 我想知道为什么我在调用 [NSUbiquitouskeyValueStore 同步] 时会冻结应用程序

有时它会在几分钟前停止冻结,有时我等待 10 分钟然后强制退出。当停止并查看线程调用时,我看到来自 NSUbiquitouskeyValueStore _forceSynchronize 方法的信号量陷阱。

0 投票
6 回答
4236 浏览

ios - NSUbiquitousKeyValueStore 同步问题

我在使用 NSUbiquitousKeyValueStore 并让它在两个设备之间可靠地同步时遇到了麻烦。它开始让我发疯。疯狂的。

我看我的代码调用:

但更多时候,数据永远不会出现在其他设备上。

我已经看到它在几秒钟内同步,而其他时候我等了一个小时却从未见过同步。我将设备插入 xcode 并开始调试,有时数据会突然弹出,有时则不会。有时确实如此。

拨打此电话后,退出并重新启动应用程序,如果我阅读它,我会看到旧数据,而不是我刚刚发布的新数据。在同一台设备上。

当应用程序启动时,我会调用:

我假设没有需要运行的初始化代码。我没有找到任何例子。

当它工作时,它工作得很好。

然后今晚我正在查看设备日志,并在我最后一次退出后发现了这个(并尝试发送数据):

该路径不是我的应用程序沙箱的有效路径(错误的 GUID),所以我想知道这是否是我问题的根源。在开发过程中我确实删除并重新安装了很多应用程序,所以我想知道某处是否缓存了一些旧路径并且它正在尝试同步该数据。有没有办法清除它?

我知道我的所有权利都设置正确,因为它有时确实有效。

[[NSUbiquitousKeyValueStore defaultStore] synchronize]正在回归YES

有没有其他人看到这个问题或那个错误?当我的应用程序启动和将数据发送到云时,我还需要做些什么吗?根据文档和示例,这似乎很容易。

0 投票
1 回答
442 浏览

objective-c - 获取当前的 iCloud 同步状态

有谁知道是否有办法检测当前NSUbiquitousKeyValueStore是否是最新的?例如,如果我打开了飞行模式或没有互联网连接,iCloud 无法同步数据,但我如何告诉用户他正在处理可能是旧数据?

我也尝试过处理,NSUbiquitousKeyValueStoreDidChangeExternallyNotification但它不会因失败而触发。

此致。

0 投票
1 回答
200 浏览

ios - Provisioning Profile 和 NSUbiquitousKeyValueStore 问题

我目前正在开发的应用程序最初是由其他人在另一台 Mac 上开发的,并且有几个与之链接的配置文件。大约一个月前,我制作了一个新的配置文件,以便在原始开发人员测试的同一台设备上进行测试,一切正常。从过去几天开始,我在设备上运行应用程序时收到此错误:

我研究了这个错误并得出结论,我的权利在某种程度上是错误的。然后我发现它们被关闭了,这是我为了让新的配置文件在设备上工作而做的。我再次打开权利并得到这个熟悉的错误:

我尝试了互联网上各种来源的许多建议来解决这个问题,但似乎没有一个有效,这就是我最初关闭权利的原因(一个有效的建议)。

我创建的配置文件在设备的配置文件选项卡下列为有效。还有 4 个其他配置文件仅在库的配置文件选项卡中列出。

可以在没有权利文件的情况下将应用上传到商店吗?

是否可以进行应用程序的最终分发和二进制文件的上传以及 NSUbiquitousKeyValueStore 错误:不会出现?

谁能给我一个相当全面的分步指南,以完全删除旧配置文件和当前权利之间的链接,或者更改权利文件以使用当前配置文件的方法?

我知道这种错误很难诊断和解决,但感谢您提供任何帮助。