我正在为 iOS 设备制作应用程序。这不是我的第一个应用程序,但它并不重要。我的应用程序用于NSUserDefaults
存储在应用程序运行时使用的数据。当用户想要删除应用程序时,一切正常。在此之后以及在同一设备上再次安装/编译应用程序后,所有设置NSUserDefaults
都将被删除 - 看起来应用程序是第一次在此设备上。
问题是:
- 如果我想在删除并再次安装应用程序后读取数据,我应该如何存储数据?
- 如果没有
NSUserDefaults
,那么在哪里存储这些数据?
先感谢您。
我正在为 iOS 设备制作应用程序。这不是我的第一个应用程序,但它并不重要。我的应用程序用于NSUserDefaults
存储在应用程序运行时使用的数据。当用户想要删除应用程序时,一切正常。在此之后以及在同一设备上再次安装/编译应用程序后,所有设置NSUserDefaults
都将被删除 - 看起来应用程序是第一次在此设备上。
问题是:
NSUserDefaults
,那么在哪里存储这些数据?先感谢您。
nsuserdefaults 不保留。您应用程序的沙箱中的任何内容都不是钥匙串。钥匙串中的值不会被删除。
因此,将钥匙串用于您想要保留的值。
但不要将所有东西都存储在那里。通常,当用户删除一个应用程序时,他希望东西消失。
我能看到的唯一其他方式是您自己的服务器,用户可以在其中存储备份,dropbbox api 或 icloud
你想使用钥匙串,这里的文档。
这是设备上的唯一方法。可能您可以使用 iCloud,具体取决于您想要实现的目标。
我认为您可以将默认值存储在自定义 plist 中,然后使用 iOS 内置的 iCloud。iCloud 会自动从您的应用程序中备份文档,然后您可以在新安装时使用它们,因为苹果会处理这个问题。
看看苹果关于在 iCloud 上存储键值数据的官方文档:
在该链接中,他们解释了如何将 iCloud 上的键值数据添加到您的应用程序。