参考资料: html
1:使用Keychain存储用户敏感信息 数据库
http://blog.csdn.net/tianyitianyi1/article/details/7643365 后端
2:NSUserDefaults简介及使用 框架
http://qing.blog.sina.com.cn/2739139371/a343f32b33001kpq.html 函数
介绍: 优化
1: KeyChain atom
KeyChain是用于在iOS中存储敏感信息时的一个推荐型方案.
若是直接使用其API,仍是很是繁琐的,为此网上已经有牛人,对此其API进行了封装,咱们学会使用就好了.
两部操做便可:
第一步:引入系统框架文件
Security.framework
第二步:导入开源框架
SFHFKeychainUtils
参考连接中有源代码下载地址,这里就不提供了,
那么我这里提供一个 我使用事后的一个优化版:
Demo
使用很是简单, 4个方法:添加,删除,查询,查询所有
注:
KeyChain的信息存储不会由于App的被删除而丢失数据,这个有点相似
Windows的注册表的概念差很少.
2:Property List (熟称的Plist)
Property List是在App里面存储一些较为简单且零散的键值对的一个推荐型方法
如下代码 分别用于建立或修改Property List文件内部值: spa
- //经过文件路径获取
- NSMutableDictionary *attachmentInfoDictionary = [[NSMutableDictionary alloc] initWithContentsOfFile:attachmentInfoPathString];
- //判断是否成功从指定的路径中取到Plist 文件,若是没有,则实例化一个新的供写入
- if (attachmentInfoDictionary == nil) {
- attachmentInfoDictionary = [[NSMutableDictionary alloc] init];
- }
- [attachmentInfoDictionary setObject:@"值" forKey:@"键"];
- NSLog(@"%@",attachmentInfoDictionary);
- //返回是否写入成功 可是须要确保指定的路径结构存在,不然确定失败
- [attachmentInfoDictionary writeToFile:attachmentInfoPathString atomically:NO];
- [attachmentInfoDictionary release];
3:NSUserDefaults
NSUserDefaults是系统级
Property List文件,里面存储一些App配置参数,固然,咱们也能够加一些本身的值进行,用户和
Property List几乎同样
1:查询
NSUserDefaults 里面所有存储的值,这里面能够看到咱们开发时存储的:
- [[NSUserDefaults standardUserDefaults] dictionaryRepresentation]
2:当对
NSUserDefaults
修改的值之后,须要调用同步函数实现数据持久化
- [[NSUserDefaults standardUserDefaults] synchronize];
4:Core Data
Core Data是对SQLite的封装,以面向对象的方式与本地数据库进行数据交互
5:StackMob
StackMob是专为移动App打造的后端云存储解决方案,是博主大力推荐使用的
Baas平台
6:SQLite
SQLite 的使用参考FEDM
http://blog.csdn.net/ysy441088327/article/details/8025624