我正在使用一个 iOS 应用程序,该应用程序需要用户配置应用程序的一部分,并且在用户打开/关闭应用程序的一部分时必须保存该配置。应用程序在后台运行后,出于安全目的,必须删除用户配置。
我的问题是什么是最好的方法来临时保存字符串和 NSIntegers,然后在时机成熟时将它们删除。
NSUserDefaults
NSCache
我对两者都进行了研究,无法得出任何可靠的结论。还有另一种我想念的方法可能会更好吗?
谢谢!-布赖恩
我正在使用一个 iOS 应用程序,该应用程序需要用户配置应用程序的一部分,并且在用户打开/关闭应用程序的一部分时必须保存该配置。应用程序在后台运行后,出于安全目的,必须删除用户配置。
我的问题是什么是最好的方法来临时保存字符串和 NSIntegers,然后在时机成熟时将它们删除。
NSUserDefaults
NSCache
我对两者都进行了研究,无法得出任何可靠的结论。还有另一种我想念的方法可能会更好吗?
谢谢!-布赖恩
如果您只希望您的设置在您的应用程序处于前台时可用,请不要将它们存储在NSUserDefaults
. NSUserDefaults
在应用程序启动之间持续存在,并在用户删除应用程序时被删除。
对于临时存储,请考虑将键/值对存储在简单的NSMutableDictionary
. 清除应用程序委托applicationWillResignActive
方法中的字典,以确保在将应用程序移至后台时清除值。
虽然 anNSCache
是类似于字典的键/值存储,但NSCache
如果您的应用收到任何低内存警告,它将清除它。仅将非关键(可重新创建)数据存储在NSCache
.