数据持久化

一、文件
二、UserDefault
三、SQLite
四、keychain
五、coredata
六、归档化

UserDefault
1. 应用域(domain)

    一般NSUserDefault内使用setValue:forKeyPath方法时,存储的数据存入了应用域

2. 注册域

     仅有较低的优先权,应用域没找到在此找

3. 全局域

    系统设置
  1. 预言域

    包括地区,日期
    
  2. 参数域

    有较高的优先权
    

1、沙盒目录结构

  • Application:存放程序源文件,上架前经过数字签名,上架后不可修改
  • Documents:常用目录,存储大文件或常更新的数据,能进行iCloud备份目录。这里不能存缓存文件,否则上架不被通过。
//获取目录位置
NSArray *documentDirectory = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,Yes);
NSString *myDocPath = [documentDirectory objectAtIndex:0];
//documentDirectory数组里面只有一个元素,获取第一个还是最后一个都是可以取出Documents目录
  • Library
    1. Caches:存放体积大又不需要备份的数据,应用程序的数据,可以存缓存数据,SDWebImage缓存路径就是这个
    2. Preference:设置数据,iCloud会备份设置信息
  • tmp:存放临时文件,不会被备份,而且这个文件下的数据有可能随时被清除的可能
//获取目录位置
NSString *tmpDirectory = NSTemporaryDirectory();

2、App Bundle 里面有什么

  • Info.plist:此文件包含了应用程序的配置信息.系统依赖此文件以获取应用程序的相关信息
  • 可执行文件:此文件包含应用程序的入口和通过静态连接到应用程序target的代码
  • 资源文件:图片,声音文件一类的
  • 其他:可以嵌入定制的数据资源
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值