沙盒

作者: eastCloud | 来源:发表于2016-03-10 23:51 被阅读120次

iOS开发的过程中,数据存储是必不可少的一个模块,了解存储就得先知道沙盒

常见的几种存储方式

1.plist文件(属性列表)
2.NSKeyedArchiver(归档)
3.Preference(偏好设置)
4.SQLite3
5.Core Date
在了解他们之前,就得先说下沙盒。

沙盒机制

-每个应用程序位于文件系统的严格限制部分
-每个应用程序只能在为该程序创建的文件系统中读取文件
-每个应用程序在iOS系统内都放在了统一的文件夹目录下
-沙盒的本质就是一个文件夹,名字是随机分配的,按照UUID标示符标记分配的

沙盒路径的位置

1、通过Finder查找程序沙盒相对路径
~/Library/Application Support/iPhone Simulator
2、通过代码查找程序的沙盒路径

FOUNDATION_EXPORT NSArray<NSString *> *NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory directory, NSSearchPathDomainMask domainMask, BOOL expandTilde);
 /**
 *  沙盒路径
 *
 *  @param NSDocumentDirectory 制定指定的目录名称
 *  @param NSUserDomainMask    制定制定的作用域
 *  @param YES                 是否返回完整路径
 *
 *  @return Documents文件夹
 */
NSArray *filepaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
//数据持久化常用文件夹Documents
NSLog(@"Documents = %@",filepaths);
//数据持久化常用文件夹Tem
NSString *temPath = NSTemporaryDirectory();
NSLog(@"temp = %@",temPath);
    
//应用程序在安装完成之后会在对应的沙盒中产生一个.app文件(与之对应的类是NSBundle),工程中的资源会保存在这个.app文件中,此.app文件是只读的,通常称之为应用程序包
NSString *imagePath = [[NSBundle mainBundle] pathForResource:@"image" ofType:@"png"];

文件存储的相对目录

//获取所有的Docments文件夹
NSArray *filepaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
//将最后一个Documents文件夹路径作为文件的存储目录
NSString *docPath = filepaths.lastObject;```
####沙盒的基本构成
Document:保存应用运行时生成的```需要持久化的数据```,iTunes同步设备时```会备份```该目录;
Library/Caches:保存应用运行时生成的```需要持久化的数据```,iTunes同步设备时```不会备份```该目录;
Library/Preferences:保存应用的所有```偏好设置```,iOS的setting(设置)应用会在该目录中查找应用的设置信息。iTunes同步```会备份该目录```.
tmp:保存应用运行时所需的```临时数据```,使用完毕后再将相应文件从该目录删除,应用没有运行时,系统也可能会清除该目录下的文件,itunes同步```不会备份```该目录。

ps:本来是想写一篇关于数据存储的,写着写着发现自己果然写作能力匮乏...哎....退而求其次写了这篇沙盒,好歹也是写了点东西😄,睡觉了😪

相关文章

  • IOS沙盒 - OC

    沙盒: 沙盒包含: 沙盒路径获取的方法:

  • Objective-C沙盒结构

    导读: 一、什么是沙盒机制二、沙盒的特点三、沙盒的结构组成四、获取沙盒目录路径 一、什么是沙盒机制 iOS中的沙盒...

  • iOS 数据持久化知识汇总(1)—————存储路径

    一、沙盒和沙盒存储路径 1、沙盒是什么 iOS 每个iOS应用都有自己的应用沙盒,应用沙盒就是文件系统目录 。所...

  • OC - 沙盒

    导读: 一、什么是沙盒机制 二、沙盒的特点 三、沙盒的结构组成 四、获取沙盒目录路径 一、什么是沙盒机制 iOS中...

  • 沙盒

    1、沙盒 程序只能访问自己的沙盒 NSHomeDirectory() 访问沙盒路径 沙盒下有三个目录:Docume...

  • iOS 系统相关复习

    沙盒 iOS沙盒详细介绍iOS沙盒篇 沙盒机制介绍 iOS中的沙盒机制是一种安全体系。为了保证系统安全,iOS每个...

  • iOS开发之沙盒机制

    沙盒 iOS系统,每个应用都有自己的沙盒,每个沙盒都是相互独立的,不能互相访问。 获取沙盒路径的代码: NSHom...

  • 数据持久化存储

    沙盒 iOS程序默认情况下只能访问自己的目录,这个目录被称作沙盒 沙盒结构 沙盒结构主要为 DocumentLib...

  • iOS的永久话储存

    沙盒:IOS应用中每个应用均有自己沙盒,用来储存APP自己的数据,每个应用的沙盒均是应用特有的不能交叉访问。 沙盒...

  • iOS沙盒解析及操作

    介绍 概念:每个应用拥有自己的应用沙盒,所谓的应用沙盒就是文件系统目录。 沙盒文件目录 沙盒操作 获取应用根目录 ...

网友评论

    本文标题:沙盒

    本文链接:https://www.haomeiwen.com/subject/fsxtlttx.html