zoukankan      html  css  js  c++  java
  • iOS沙盒机制

    沙盒:每一个iOS应用程序都会为自己创建一个文件系统目录(文件夹), 这个独立,封闭, 安全的空间,就叫做沙盒.

    iOS的沙盒机制(SandBox)

    1, 沙盒是一种安全体系.

    2, 他规定了应用程序只能在为该应用程序创建的文件夹(沙盒)内访问文件,不可以访问其他沙盒内的内容(iOS8 已经部分开放访问).

    3, 所有的非代码文件都保存在这个地方,比如图片,声音, 属性列表(plist),sqlite数据库和文本文件等.

    特点:每个应用程序的活动范围都限定在自己的沙盒里.不能随意跨越自己的沙盒去访问别的应用程序的沙盒.应用程序向外请求或者接受数据都需要经过全县认真.

    获取沙盒路径的方法:

    NSString *path = NSHomeDirectory();

    沙盒文件夹下有三个系统生成的文件夹Documents, Library, tmp

    Documents:存放创建保存的数据,iTunes 会自动的备份该目录.

    Library:(1)Caches存放缓存文件

                (2)Preferences:存放偏好设置,(注意我们直接使用NSUserDefaults 操作该文件夹即可)

    tmp: 存储临时文件,比如:下载的zip压缩包,解压后直接删除

    NSUserDefaults 直接操作Preferences 文件夹

    // 一, 获取Documents 文件夹路径

        //1, 查找的文件路径

        //2, NSSearchPathDomainMask domainMask:在哪个域中查找,参数

        //3, 是否显示详细路径

        NSString *documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject];

        //二, 获取tmp 目录

        NSString *tmpPath = NSTemporaryDirectory();

     

        //三, 获取Library 目录

        NSString *libraryPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) firstObject];

        //四, 获取Library/Caches 目录

        NSString *libCachesPath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) firstObject];

        //五, 获取Library/Preferences 目录

        //注意:通常情况下, Preferences 由系统维护,我们只需要通过NSUserDefaults 来操作即可

  • 相关阅读:
    POJ 1386 Play on Words(单词建图+欧拉通(回)路路判断)
    HTTP协议详解??
    Python 中三大框架各自的应用场景??
    django 开发中数据库做过什么优化??
    谈一下你对 uWSGI 和 nginx 的理解??
    django 中间件的使用??
    Flask 中请求钩子的理解和应用?
    七层模型? IP ,TCP/UDP ,HTTP ,RTSP ,FTP 分别在哪层?
    说说 HTTP 和 HTTPS 区别??
    hasattr() getattr() setattr() 函数使用详解??
  • 原文地址:https://www.cnblogs.com/dreamDeveloper/p/6057557.html
Copyright © 2011-2022 走看看