美文网首页
36期_iOS_沙盒介绍

36期_iOS_沙盒介绍

作者: 萧修 | 来源:发表于2023-09-06 01:00 被阅读0次
  • 了解沙盒概念
  • 掌握沙盒根目录结构以及各自使用

沙盒结构

沙盒机制下,每个程序之间的文件夹不能互相访问。

当应用程序需要向外部请求或接受数据时,都需要经过权限认证,否则,无法获取到数据。

沙盒根目录有三个文件夹,分别是Document,Library,tmp

NSString *homed = NSHomeDirectory();
NSLog(@"沙盒路径(NSHomeDirectory)%@",homed);

Document

保存应用程序本身产生的文件数据,例如游戏进度,iTunes备份和恢复的时候,会包括此目录

?不可保存网络下载资源?

获取路径

NSString *searchPathDir = NSSearchPathForDirectoriesInDomains(
NSDocumentDirectory, 
NSUserDomainMask, 
YES);
NSLog(@"Document路径(NSSearchPathForDirectoriesInDomains)%@",searchPathDir);
  • NSSearchPathForDirectoriesInDomains

查找文件路径的函数,返回值是一个数组,数组只有一个NSString元素

FOUNDATION_EXPORT NSArray<NSString *> *NSSearchPathForDirectoriesInDomains(
NSSearchPathDirectory directory, 
NSSearchPathDomainMask domainMask, 
BOOL expandTilde);

NSSearchPathDirectory:表示查找的文件夹,本次从Document查找
NSSearchPathDomainMask:表示从哪里查找,本次从NSUserDomainMask用户主目录查找
expandTilde:表示返回路径展开

Library

有以下目录CachesPreferences

路径获取

NSString *searchLibraryPathDir = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES).firstObject;
    NSLog(@"Library路径(NSSearchPathForDirectoriesInDomains)%@",searchLibraryPathDir);

Caches

用来保存应用程序运行时生成的需要持久化的数据,这些数据存储体积较大,又不是很重要

应用于:网络下载的数据,用户可以删除

路径获取

NSString *slCachesPathDir = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES).firstObject;

Preferences

保存应用程序所有偏好设置,iphone的设置应用会在该目录查找应用设置信息,iTunes同步时会备份该目录

可使用NSUserDefaults获取和存储。

路径获取

NSString *slPreferencePathDir = NSSearchPathForDirectoriesInDomains(NSPreferencePanesDirectory, NSUserDomainMask, YES).firstObject;

/Library/PreferencePanes,不存在此路径,需要拼接

[NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES).firstObject stringByAppendingPathComponent:@"Preference"];

tmp

保存应用程序运行时的临时数据,使用完毕再将相应的文件删除,应用没有运行,系统可能删除此目录,iTunes同步会备份此目录。

路径获取

NSTemporaryDirectory();

相关文章

  • iOS 系统相关复习

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

  • iOS沙盒解析及操作

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

  • iOS 沙盒介绍

    先简单介绍一下什么是沙盒:你可以简单理解成为一个目录,这个目录的改动不会对操作系统造成任何损失。(这里也有一点点介...

  • 沙盒文件介绍

    Documents 存放不会被删除的文件,会被itunes备份,不能放太大的文件.不然苹果审核会被拒掉 Cache...

  • 沙盒

    一、iOS沙盒机制介绍(1)概念:每个ios应用都有自己的应用沙盒,应用沙盒就是文件系统目录,与其他应用放入文件 ...

  • 沙盒缓存

    沙盒介绍 1. 查找沙盒路径 2. 沙盒目录 保存由应用程序产生的文件或数据。例如:游戏进度、涂鸦软件的绘图目...

  • 沙盒和NSBundle

    沙盒 1、沙盒机制介绍 iOS中的沙盒机制是一种安全体系。每个iOS程序都有一个独立的文件系统(存储空间),而且只...

  • iOS沙盒详细介绍

    沙盒机制介绍 iOS中的沙盒机制是一种安全体系。为了保证系统安全,iOS每个应用程序在安装时,会创建属于自己的沙盒...

  • 沙盒和NSBundle

    沙盒 1、沙盒机制介绍 iOS中的沙盒机制是一种安全体系。每个iOS程序都有一个独立的文件系统(存储空间),而且只...

  • 7.1 沙盒和NSBundle详解

    沙盒 1、沙盒机制介绍 iOS中的沙盒机制是一种安全体系。每个iOS程序都有一个独立的文件系统(存储空间),而且只...

网友评论

      本文标题:36期_iOS_沙盒介绍

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