当前位置: 首页 > news >正文

沙盒SandBox

每个App都有自己的沙盒,也就是一个存储空间。App之间没有权限访问对方的沙盒资源。沙盒的目录下有三个文件夹:DocumentsLibrarytemp

-w383

目录结构

14823792632365.jpg

  • Documents:用于存储用户数据,iTunes备份和恢复的时候会包括此目录,所以,苹果建议将程序中建立的或在程序中浏览到的文件数据保存在该目录下。
  • Documents/Inbox:主要用来存放其他程序请求当前程序打开的文件。当前App只能读取和删除该目录下的文件,不能新建新文件和修改已存在的文件,如果想修改该目录下已存在的文件,需要将它先移动到别的文件夹下。
  • Library:包含两个子目录:CachesPreferencesCaches用来存放用户存放的文件。Preferences是APP的偏好设置,可以通过NSUserDefaults来读取和设置。itunes会备份此目录。
  • tmp: 用于存放临时文件,这个可以放一些当APP退出后不再需要的文件。app不运行的时候,系统也可能会销毁此目录保存的临时文件。itunes不备份此目录

目录路径获取

沙盒目录

 NSHomeDirectory()

.app

[NSBundle mainBundle].bundlePath
 .app 中的资源文件:[[NSBundle mainBundle] pathForResource:@"audio" ofType:@"wav"]

Documents

// 在某个范围内容搜索文件夹的路径     // directory:获取哪个文件夹.这里:NSUserDomainMask 代表从用户文件夹下找
// domainMask:在哪个范围下获取 NSUserDomainMask:在用户的范围内搜索
// expandTilde是否展开全路径, NO:~(选NO存commond+G不进去) YES:显示全路径
NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); // 在iOS中,只有一个目录跟传入的参数匹配,所以这个集合里面只有一个元素:
NSString *documentsPath = [array objectAtIndex:0];

Preferences

NSString *preferenceParh = NSSearchPathForDirectoriesInDomains(NSPreferencePanesDirectory, NSUserDomainMask, YES)[0];

Caches

NSString *cachePath =           NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)[0];

Tmp

 NSTemporaryDirectory()

参考:

  • iOS获取应用沙盒Sandbox路径和基础保存数据方式
  • iOS开发之沙盒机制

转载于:https://www.cnblogs.com/coolwxb/p/6211151.html

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Python数据类型间互转(字典、字符串、列表、元组)
  • 输入n个整数,输出其中最小的k个
  • cocos2dx 3.x 精灵重叠时点击最上层的精灵
  • 输入一个整型数组,求所有子数组中和的最大值
  • 软件测试知识之分类
  • 算法导论学习笔记——贪心算法
  • web前端开发浏览器兼容性处理大全
  • 算法导论学习笔记——动态规划
  • Google技术学习
  • 【无聊放个模板系列】 半平面交
  • 最长公共子序列(LCS)问题
  • 01背包问题
  • JS控制文本框只能输入中文、英文、数字与指定特殊符号.
  • iOS僵尸对象之研究
  • 在一个大数组中有且仅有两个数相同,怎样尽快找出这两个数(未完成)
  • “大数据应用场景”之隔壁老王(连载四)
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • 《Java编程思想》读书笔记-对象导论
  • 【mysql】环境安装、服务启动、密码设置
  • Asm.js的简单介绍
  • CSS3 聊天气泡框以及 inherit、currentColor 关键字
  • Flex布局到底解决了什么问题
  • k个最大的数及变种小结
  • leetcode-27. Remove Element
  • MySQL的数据类型
  • open-falcon 开发笔记(一):从零开始搭建虚拟服务器和监测环境
  • PhantomJS 安装
  • python学习笔记-类对象的信息
  • SAP云平台运行环境Cloud Foundry和Neo的区别
  • 好的网址,关于.net 4.0 ,vs 2010
  • 猫头鹰的深夜翻译:Java 2D Graphics, 简单的仿射变换
  • 前端每日实战 2018 年 7 月份项目汇总(共 29 个项目)
  • 使用agvtool更改app version/build
  • 《码出高效》学习笔记与书中错误记录
  • Mac 上flink的安装与启动
  • # linux 中使用 visudo 命令,怎么保存退出?
  • #我与Java虚拟机的故事#连载19:等我技术变强了,我会去看你的 ​
  • (2)(2.10) LTM telemetry
  • (7) cmake 编译C++程序(二)
  • (C语言)字符分类函数
  • (二刷)代码随想录第16天|104.二叉树的最大深度 559.n叉树的最大深度● 111.二叉树的最小深度● 222.完全二叉树的节点个数
  • (几何:六边形面积)编写程序,提示用户输入六边形的边长,然后显示它的面积。
  • (南京观海微电子)——COF介绍
  • (强烈推荐)移动端音视频从零到上手(上)
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • (五)网络优化与超参数选择--九五小庞
  • (原创)boost.property_tree解析xml的帮助类以及中文解析问题的解决
  • (转)C#调用WebService 基础
  • (转)IOS中获取各种文件的目录路径的方法
  • (转)scrum常见工具列表
  • (转载)Google Chrome调试JS
  • (轉貼)《OOD启思录》:61条面向对象设计的经验原则 (OO)
  • .NET “底层”异步编程模式——异步编程模型(Asynchronous Programming Model,APM)...
  • .NET Core 2.1路线图
  • .NET Core MongoDB数据仓储和工作单元模式封装