• ios应用数据存储的常用方式 ios7.1应用沙盒


      归档:用某种格式保存某个对象,又称持久化。

    1XML 属性列表plist归档(持久化)

    2Preference(偏好设置)

    3NSKeyedArchiver归档

    4SQLite3

    5Core Data(操纵SQLLite3)

    应用沙盒

    一、iOS沙盒机制

    iOS的应用只能访问为该应用创建的区域,不可访问其他区域,应用的其他非代码文件都存在此目录下,包括图片,属性文件plist,bundle,nib文件等,这块区域称之为沙盒(sandBox)。

    1. 每个应用都有属于自己的存储空间,即沙盒
    2. 应用只能访问自己的沙盒,不可访问其他区域
    3. 如果应用需要进行文件操作,则必须将文件存放在沙盒中,尤其是数据库文件,在电脑上操作时,可以去访问,但是如果要装在真机上可以使用,必须将数据库文件拷贝至沙盒中。

    二、打开沙盒路径

    1、如果不知道沙盒路径,可以在自己的应用中打印其路径。(自己虚拟机 Xcode6.2 ios7.1

     NSLog(@"沙盒路径:%@",NSHomeDirectory());

    会得到打印结果*为字母或数字,即为沙盒的路径

    1 2015-06-19 23:10:37.692 私人通讯录[31250:1282190] 沙盒路径:/Users/zjj/Library/Developer/CoreSimulator/Devices/7CE3FB7E-052B-4B1D-8783-BEAFB45A3558/data/Containers/Data/Application/15B4C992-A4C6-4005-BF76-077EA5BBE9FC

    路径为:/Users/zjj/Library/Developer/CoreSimulator/Devices

    2、打开Finder,选择前往-前往文件夹(或选择快捷键command+shift+G)输入打印出来的路径即可

    三、目录结构

    沙盒默认情况下有三个目录文件夹documents,Library,tmp及应用的App文件,只可在相应的文件夹中进行操作

    • AppName.app 应用程序的程序包目录。由于应用程序必须经过签名,所以不能在运行时对这个目录中的内容进行修改,否则会导致应用程序无法启动。
      • Documents/ 保存应用程序的重要数据文件和用户数据文件等。如数据库文件,或程序中浏览到的文件数据。iTunes 同步时会备份该目录。

      • Library:存储应用的默认设置及状态信息;
      • Library/cache:保存应用程序使用时产生的支持文件和

    缓存文件,还有日志文件最好也放在这个目录。iTunes 同步时不会备份该目录。

      Library/Preferences 保存应用程序的偏好设置文件(使用 NSUserDefaults 类设置时创建,不应该手动创建)。
    • tmp:保存应用运行时所需要的临时数据,iphone 重启时,会清除该目录下所有文件。

    在Xcode 6中iPhone模拟器的位置已经发生了变化。与此同时,在iOS 8 release Note中有提到,app的沙盒结构已经发生了改变,现在它被划分成了三个容器,Bundle容器、Data容器、iCloud容器。iOS 8 app沙盒目录结构如下图:
     

  • 相关阅读:
    手势
    ios提示框,自动消失
    UITableView
    UIAlertView
    微信公众号主页链接
    试用avalon2.0
    VirtualPathProvider的使用
    代码暂存 [获取二唯码并识别保存二唯码]
    提交数据url太长导致提交失败
    打通前后台
  • 原文地址:https://www.cnblogs.com/zhangdashao/p/4589959.html
Copyright © 2020-2023  润新知