首页 > 解决方案 > 在 iOS 13/14 上删除应用程序时是否会擦除 UserDefaults?

问题描述

当我在UserDefaults没有任何其他框架且不使用的情况下使用 plain 时NSUbiquitousKeyValueStore,从手机中删除应用程序后 UserDefaults 是否会保留在 iCloud 中,并在重新安装该应用程序时从 iCloud 恢复?

我在文档中阅读了通常 UserDefaults 包含在(iCloud)备份中的文档。因此,如果用户安装了该应用程序,该应用程序随后会存储一些 UserDefaults,用户进行 iCloud 备份,然后从该备份恢复手机,UserDefaults 应该会再次出现。

但是,如果用户故意从他们的手机中删除我的应用程序,然后从商店重新安装它,UserDefaults 是否仍然存在(从 iCloud 恢复),或者它们是否会随着应用程序的删除而消失而不是重新安装?

用户是否必须另外从 iCloud 设置应用程序中删除我的应用程序的 iCloud 数据才能摆脱 UserDefaults 还是删除应用程序(不移动到应用程序库)?

在用户从手机中删除应用程序后,我基本上想从零开始。

这在 iOS 13 和 iOS 14 之间有什么不同吗?

标签: iosswifticloud

解决方案


从设备中删除应用程序后,与该应用程序关联的所有本地数据也将被删除。这包括NSUserDefaults. 但是,存储在在线服务中的任何数据都不会。例如,iCloud。如果用户/开发人员要求,该应用程序将再次获取数据。

当用户删除我的应用程序时,我在哪里UserDefaults被删除之前遇到了问题。因此,仅出于教育目的,如果您不想丢失数据,也不想在线存储数据,请考虑使用Keychain.

有关更多信息,您可以在此处找到它:钥匙串


推荐阅读