ios - iOS 应用程序是否将 NSUserdefaults 信息保存在同一个地方?

标签 ios iphone nsuserdefaults

我正在设计一个软图钉应用程序。有两种方法可以快速保存 iOS 信息。

  1. NSUserdefaults
  2. 钥匙串(keychain)

我只需要 NSUserdefaults

我在这里阅读了一些教程 Tutorial Link

NSUerdefault 可以保存与应用程序或用户数据相关的设置和属性。这些对象将保存在所谓的 iOS“默认系统”中。 iOS 默认系​​统在您应用的所有代码中都可用,任何保存到默认系统的数据都将在整个应用 session 中持续存在。

问题是如果有其他应用程序也使用 NSUserdefaults。

  1. 信息会不会冲突?
  2. 不同的 App 是否将 NSUserdefaults 信息保存在同一个地方?
  3. 如果我设置代码来清除模拟器中的 NSUserdefaults 信息。我可以清除所有 NSUserdefaults 信息,还是只清除我设置代码的应用程序?

最佳答案

NSUserDefaults 会将信息保存到您的应用程序沙盒区域。每个 iOS 应用程序都有自己的沙盒,数据/信息仅保存到该特定应用程序的沙盒中。不同的应用程序只会将数据保存到它们自己的沙盒区域,因此没有应用程序可以访问它自己的沙盒之外的数据。这意味着您不必担心任何类型的信息与其他应用程序的数据发生冲突。如果您在模拟器中清除应用的 NSUserDefaults 信息,它只会清除您的应用数据,而不会清除任何其他已安装应用的数据。

关于ios - iOS 应用程序是否将 NSUserdefaults 信息保存在同一个地方?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37329115/

相关文章:

iphone - 如何判断您的应用程序是否刚刚打开

xcode - 通过 Swift 访问 MacOS 中的键盘设置

swift - 我如何使用 UserDefaults 来保存和加载我的结构?

ios - UIImageView 在单 View 应用程序中遵循循环路径,如何?

ios - 处理硬编码列表/选项/下拉列表等的合法方法

ios - 字体样式在 Xcode 11 Beta 中发生更改问题

c# - 地理位置 - 它是如何工作的?

ios - 确定 ios 相机纵横比

ios - xcode 9 本地化应用程序问题

ios - NSUserDefault 在随机时间后被自动清除