標籤:
一 查看沙箱結構
和一些百度來的部落格顯示隱藏穩檔案的方式不同,本文也提供兩種方式,簡單粗暴。
方式一 使用工具simpholders(推薦)
下載連結
http://simpholders.com/
效果
方式二 直接使用代碼
用以下代碼,log出documents/路徑
NSURL * url = [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];
比如我Log出的結果
/Users/huangwenchen/Library/Developer/CoreSimulator/Devices/158D1CE6-0444-454B-B248-798726D6BC40/data/Containers/Data/Application/77B749FB-7B2F-4AE5-BE24-039BF3760F67/Documents/
然後,雙擊finder->前往檔案夾->把上述路徑複製進去
二 沙箱目錄介紹
沙箱的目錄
不難看出,主要包括三大部分,Bundle,Data和iCloud。
而Data又包括三部分,Documents,Library,Temp.
然後,我們介紹下沙箱的每部分作用。
| 名稱 |
作用 |
| AppName.app |
App的Bundle包括app和app所有的資源(安裝時候的表徵圖,儲存在應用程式套件裡的圖片),唯讀。不會被Itunes備份,只會在最初始從App store的時候同步一次。 |
| Documents/ |
儲存使用者產生的內容。這個目錄下的檔案可以通過檔案分享權限設定暴露給使用者,也就是說,這個目錄下儲存的只能是你想暴露給使用者的東西。iTunes備份 |
| Library/ |
非使用者檔案的頂級目錄,用這個目錄來儲存哪些不想暴露給使用者的檔案。這個目錄有很多子目錄,在下文詳細闡述。 |
| tmp/ |
臨時檔案,App應當在檔案不需要使用的時候把該檔案刪除。儲存那些不會在兩次運行App都要使用的資料。不會被iTunes備份。 |
Library的子目錄
| 名稱 |
作用 |
| Caches |
寫入那些App能夠很容易重新建立的檔案,App要管理這個目錄,在適當的時候添加或者刪除檔案。例如網頁的快取檔案。。 |
| Preferences |
使用者偏好資訊。例如NSUserDefaults久儲存在這裡 |
三 驗證
這裡開啟我之前寫的一個NSURLSession的Demo沙箱
我們通過上述的方式,開啟沙箱看看,裡面到底有什麼東西。
先看看Bundle目錄
我的模擬器裝了三個軟體,正好對應這裡的三個Bundle
再看看Data目錄,正好三個目錄對應著上文的三個目錄
,
可以看到,在看看Library的字目錄,對應儲存著Cache,Cookie,和Preferences資訊。
iOS_SN_詳解沙河(轉載)