为什么同样的iCloud账户却有不同的ubiquityIdentityToken

时间:2014-01-06 08:40:25

标签: ios icloud nsubiquitouskeyvaluestore

我正在尝试使用iCloud Key-value存储功能实现应用。

目前,我正在使用iPhone5siOS7.0.4的iPhone4对两台设备进行测试 你们有没有想过为什么同样的iOS6.1.1.(从设置 - > iCloud - >帐户中检查)得到两个不同的iCloud account?我想这就是数据在这两个设备之间没有同步的原因(网络访问)。

在iOS6上,ubiquityIdentityToken没有触发。

提前致谢!

3 个答案:

答案 0 :(得分:7)

ubiquityIdentityToken仅用于:

  • 确定您的应用是否可以使用iCloud
  • 确定iCloud帐户是否已更改(通过与之前保存的值进行比较)。

它不透明但符合一些协议。您可以在本地保存它,并将当前值与之前的值进行比较,但这就是它的所有优点。它不能保证在任何其他情况下都有用。

即使这些设备使用相同的iCloud帐户,也不能保证在不同设备上保持相同。为什么它可能不同没有记录 - 它可能以某种方式编码特定于设备的值。无论如何,它不是你可以从一个设备转移到另一个设备并期望仍然有用的东西。这不是它的工作方式。

答案 1 :(得分:1)

它会对令牌中特定于设备的值进行编码。位置17和22之间的8位十六进制数字组在不同的设备上或使用不同的iCloud帐户更改。

其他群组通常在不同的应用,设备或iCloud帐户中保持不变。

答案 2 :(得分:-1)

这是一种奇怪的行为。在这些情况下,Apple通常建议在两个设备上再次注销并使用相同的Apple ID(使用相同的Apple ID)。试试看,看看是否有帮助。此外,请确保在每台设备上安装最新版本的应用程序(启用iCloud)。