我开发了一个支持 iCloud 的 iPhone 应用程序,但我面临的问题是,即使用户关闭我的应用程序的 iCloud 备份,它也会在 iCloud 上备份并反映我其他设备上的更改,所以我想知道如何我能知道我的应用程序是否启用了 iCloud。
它专门针对应用程序而不是设备,如果设备启用了 iCloud,但我的应用程序已关闭,那么它不应该进行任何备份。
如果您使用键值存储而不是文档存储,我建议您使用它。
id iCloudToken = [[NSFileManager defaultManager] ubiquityIdentityToken];
if ( iCloudToken != nil) {
// User has enabled icloud in your app...
} else {
// Icloud is not enabled for your app...
}
现在我推荐上述方法的原因是,在新的 Xcode 编译器中,您现在可以决定是否要使用文档存储。如果您选择仅使用键值存储,则 NSFileManager 检查将失败,因为您不会在权利中定义容器标识符。但是,如果用户允许您的应用程序运行,则 ubiquityIdentityToken 将始终存在,这意味着如果用户允许您的应用程序访问 iCloud,则 ubiquityIdentityToken 将始终触发 true 或 false。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)