沙盒
iOS系統(tǒng)寻拂,每個(gè)應(yīng)用都有自己的沙盒晌坤,每個(gè)沙盒都是相互獨(dú)立的司草,不能互相訪問(wèn)。
獲取沙盒路徑的代碼:
NSHomeDirectory()
沙盒中的結(jié)構(gòu)
沙盒結(jié)構(gòu)如上圖
1.document:應(yīng)用程序在運(yùn)行時(shí)生成的一些需要長(zhǎng)久保存的重要數(shù)據(jù)放在此文件中泡仗。通過(guò)iTunes埋虹,iCloud備份時(shí),會(huì)備份此目錄下的數(shù)據(jù)娩怎。iTunes共享文件時(shí)搔课,可以共享此文件目錄。
2.Library:
? ?a.Cache:存放緩存文件截亦,比如從網(wǎng)路上下載的數(shù)據(jù)或數(shù)據(jù)爬泥。一般用來(lái)保存應(yīng)用需要長(zhǎng)期使用的,數(shù)據(jù)量大崩瓤,不需要備份的非重要數(shù)據(jù)袍啡。iTunes,iCloud備份時(shí)不會(huì)備份此目錄下的數(shù)據(jù)
? ?b.Prefrence:保存應(yīng)用的所有偏好設(shè)置,比如賬號(hào)却桶,設(shè)置等境输。由系統(tǒng)自動(dòng)管理蔗牡。iTunes,iCloud備份時(shí)會(huì)備份此目錄下的數(shù)據(jù)和文件
3.tmp:用于保存應(yīng)用在運(yùn)行時(shí)產(chǎn)生的一些臨時(shí)數(shù)據(jù)文件,手機(jī)重啟嗅剖,系統(tǒng)空間不足的辩越,關(guān)閉應(yīng)用等場(chǎng)景下可能會(huì)刪除該文件下的文件。iTunes備份時(shí)不會(huì)備份該目錄下的文件
調(diào)用方法:
Document:
NSArray *paths = NSSearchPathForDirectoriesInDomain(NSDocumentDirectory,NSUserDomainMask,YES)
NSString *document = path[0];
NSString *fileName = [document stringByAppendPathComponent:@"theFile.txt"];
Library:
NSArray *Paths=NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
NSString *path=[Paths objectAtIndex:0];
Cache
NSArray *Paths=NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *path=[Paths objectAtIndex:0];
tmp
NSTemporaryDirectory();