应用程序传输后 NSUserDefaults 是否仍然存在?
Does NSUserDefaults persist after app transfer?
对于从一个开发帐户转移到另一个开发帐户的应用程序(不同的团队因此会有不同的 bundle id 前缀),一旦从新的开发帐户发布了更新,请执行存储在 [=10 中的值=] 坚持还是整个事情都被清除了?
答案是否定的,原因如下。
数据将在应用程序的整个生命周期内保留在 NSUserDefaults 中,
如果您正在安装具有另一个捆绑包 ID [新捆绑包 ID] 的应用程序,那么它将被视为另一个应用程序,因此不会保留旧应用程序 [旧捆绑包 ID] 中的任何旧数据。
答案实际上是 YES
- 我用两个实时应用程序测试了这个,这两个应用程序从一个 iTunes 连接帐户转移到另一个(具有不同的团队 ID)并且只是 NSUserDefaults
来存储和加载用户 data/settings。正如我所怀疑的,这确实有效的原因是因为 NSUserDefaults
不依赖包标识符的前缀来确定要使用哪个容器。
TLDR:
是
对于从一个开发帐户转移到另一个开发帐户的应用程序(不同的团队因此会有不同的 bundle id 前缀),一旦从新的开发帐户发布了更新,请执行存储在 [=10 中的值=] 坚持还是整个事情都被清除了?
答案是否定的,原因如下。
数据将在应用程序的整个生命周期内保留在 NSUserDefaults 中,
如果您正在安装具有另一个捆绑包 ID [新捆绑包 ID] 的应用程序,那么它将被视为另一个应用程序,因此不会保留旧应用程序 [旧捆绑包 ID] 中的任何旧数据。
答案实际上是 YES
- 我用两个实时应用程序测试了这个,这两个应用程序从一个 iTunes 连接帐户转移到另一个(具有不同的团队 ID)并且只是 NSUserDefaults
来存储和加载用户 data/settings。正如我所怀疑的,这确实有效的原因是因为 NSUserDefaults
不依赖包标识符的前缀来确定要使用哪个容器。
TLDR:
是