0

我正在为 iOS 设备制作应用程序。这不是我的第一个应用程序,但它并不重要。我的应用程序用于NSUserDefaults存储在应用程序运行时使用的数据。当用户想要删除应用程序时,一切正常。在此之后以及在同一设备上再次安装/编译应用程序后,所有设置NSUserDefaults都将被删除 - 看起来应用程序是第一次在此设备上。

问题是:

  1. 如果我想在删除并再次安装应用程序后读取数据,我应该如何存储数据?
  2. 如果没有NSUserDefaults,那么在哪里存储这些数据?

先感谢您。

4

3 回答 3

2

nsuserdefaults 不保留。您应用程序的沙箱中的任何内容都不是钥匙串。钥匙串中的值不会被删除。

因此,将钥匙串用于您想要保留的值。

但不要将所有东西都存储在那里。通常,当用户删除一个应用程序时,他希望东西消失。


我能看到的唯一其他方式是您自己的服务器,用户可以在其中存储备份,dropbbox api 或 icloud

于 2013-06-04T18:50:43.230 回答
1

你想使用钥匙串,这里的文档。

这是设备上的唯一方法。可能您可以使用 iCloud,具体取决于您想要实现的目标。

于 2013-06-04T18:47:38.443 回答
1

我认为您可以将默认值存储在自定义 plist 中,然后使用 iOS 内置的 iCloud。iCloud 会自动从您的应用程序中备份文档,然后您可以在新安装时使用它们,因为苹果会处理这个问题。

看看苹果关于在 iCloud 上存储键值数据的官方文档:

https://developer.apple.com/library/ios/#documentation/General/Conceptual/iCloudDesignGuide/Chapters/DesigningForKey-ValueDataIniCloud.html#//apple_ref/doc/uid/TP40012094-CH7-SW1

在该链接中,他们解释了如何将 iCloud 上的键值数据添加到您的应用程序。

于 2013-06-04T19:00:50.813 回答