標籤:沙箱機制 沙箱路徑 沙箱 ios開發 剛剛線上
iOS開發之沙箱機制(SandBox)詳細講解了沙箱的一些機制。在開發中,我們需要對沙箱進行操作,所以我們需要擷取到沙箱路徑。
沙箱裡的檔案夾包括Documents、Library、tmp。這三個檔案夾的作用請點擊這裡。接下來我們來講解如何擷取Documents、Library、tmp的路徑。
擷取沙箱根目錄
擷取沙箱根目錄,直接調用NSHomeDirectory():
//擷取沙箱根目錄NSString *directory = NSHomeDirectory();NSLog(@"directory:%@", directory);
控制台輸出:
2015-07-22 00:40:16.185 iOSStrongDemo[1605:555658] directory:/var/mobile/Containers/Data/Application/F9418815-51A9-4A0A-A76C-6FD37C400928
這個是真機的路徑,大家有時間的話可以看看模擬器的根目錄路徑。
擷取Documents路徑
擷取Documents路徑如下:
//擷取Documents路徑NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);NSString *path = [paths objectAtIndex:0];NSLog(@"path:%@", path);
控制台輸出:
2015-07-22 00:41:41.397 iOSStrongDemo[1613:556159] path:/var/mobile/Containers/Data/Application/A62B886B-A8F0-4215-B59D-1F505C3997BD/Documents
擷取Documents檔案夾目錄,第一個參數是說明擷取Doucments檔案夾目錄,第二個參數說明是在當前應用沙箱中擷取。
擷取Library路徑
//擷取Library路徑NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);NSString *path = [paths objectAtIndex:0];NSLog(@"path:%@", path);
控制台輸出:
2015-07-22 00:43:15.803 iOSStrongDemo[1619:556638] /var/mobile/Containers/Data/Application/17300507-4643-4DE7-BC68-E13DB19C8D98/Library
擷取Caches路徑
//擷取Caches路徑NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);NSString *path = [paths objectAtIndex:0];NSLog(@"path:%@", path);
控制台輸出:
2015-07-22 00:44:31.383 iOSStrongDemo[1626:557083] path:/var/mobile/Containers/Data/Application/1E945B52-E29D-4041-A489-1AA1B11BB960/Library/Caches
擷取tmp路徑
NSString *tmp = NSTemporaryDirectory();NSLog(@"tmp:%@", tmp);
控制台輸出:
2015-07-22 00:46:07.846 iOSStrongDemo[1632:557537] tmp:/private/var/mobile/Containers/Data/Application/4BE02307-1CC5-47E8-BEA8-CEBB7ED5A402/tmp/
以上是iOS開發中擷取沙箱路徑的方法,也許還有更好的擷取方法等待我們去發現。後面我們還會講到關於在沙箱裡進行讀寫檔案操作。
?
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
iOS開發之擷取沙箱路徑