NSFileManager ubiquityIdentityToken 始终为零 tvOS
NSFileManager ubiquityIdentityToken always nil tvOS
我正在努力添加 iCloud KVS 以在 iOS/tvOS 应用程序中存储设置和分数。
一切都已设置并在 iOS 台设备上运行良好;但是,当我检查 ubiquityIdentityToken 时,我的 AppleTV 总是 returns nil。
下面我的功能是按照 Apple 的指导方针。
func iCloudAvailable() -> Bool {
let token = NSFileManager.defaultManager().ubiquityIdentityToken
if token == nil {
return false
}
return true
}
需要注意的一件事是,如果我强制该功能 return 为真,我的 AppleTV 将与存储在 iCloud 中的设置和分数同步。
我没有看到我可能遗漏了什么,因为我似乎无法在 AppleTV 上找到有关 iCloud KVS 的任何具体信息。
编辑
为了澄清,我想确认我确实登录了 iCloud。
根据 this answer , I don't even need to be checking for the availability of iCloud as Apple's own iCloud fundamentals guide 指出,键值存储应被视为始终可用。
因此,就我而言,继续使用 KVS 并忽略 .ubiquityIdentityToken 为 nil 的事实是安全的。
我正在努力添加 iCloud KVS 以在 iOS/tvOS 应用程序中存储设置和分数。
一切都已设置并在 iOS 台设备上运行良好;但是,当我检查 ubiquityIdentityToken 时,我的 AppleTV 总是 returns nil。
下面我的功能是按照 Apple 的指导方针。
func iCloudAvailable() -> Bool {
let token = NSFileManager.defaultManager().ubiquityIdentityToken
if token == nil {
return false
}
return true
}
需要注意的一件事是,如果我强制该功能 return 为真,我的 AppleTV 将与存储在 iCloud 中的设置和分数同步。
我没有看到我可能遗漏了什么,因为我似乎无法在 AppleTV 上找到有关 iCloud KVS 的任何具体信息。
编辑
为了澄清,我想确认我确实登录了 iCloud。
根据 this answer , I don't even need to be checking for the availability of iCloud as Apple's own iCloud fundamentals guide 指出,键值存储应被视为始终可用。
因此,就我而言,继续使用 KVS 并忽略 .ubiquityIdentityToken 为 nil 的事实是安全的。