ios 應用程式沙盒

2021-08-04 13:39:25 字數 1456 閱讀 6048

應用沙盒的檔案系統目錄

應用沙盒其實就是應用程式所在的那個資料夾,包含了所有的資源檔案和可執行檔案。

documents:就是儲存應用執行時生成的需要持久化的資料,什麼是需要持久化的資料就是儲存到硬碟裡面的資料,下次我們開機還是可以看到的資料,itunes在同步裝置的時候回備份該目錄,比如說遊戲的存檔一般都儲存在該目錄下。

tmp:儲存應用執行時所需要的臨時資料,使用完畢之後再將相應的資料從該資料夾刪除,應用沒有執行的時候,系統也有可能會清除該目錄下的檔案,itunes同步的時候不會備份該目錄。

library/preference:就是儲存應用的所有的偏好設定,ios的setting應用會在該目錄在查詢應用的設定資訊,itunes同步裝置的時候會去備份。就比如說你搜狗輸入法裡面的偏好設定啊,還有就是你lol裡面放技能的鍵盤快捷鍵的設定啊,還有就是設定自動登入啊都是可以用偏好設定進行設定的。

怎麼獲取documents的路徑?

方法1 用字串拼接的方式

nsstring * homepath=nshomedirectory();//獲取沙盒根目錄
當然這也也是可以的

nsstring * homepath=nshomedirectory();
方法2 用搜尋的形式 searchpath表示搜尋的路徑 fordirectories表示搜尋哪個資料夾indomains表示在哪個區域當做搜尋,這裡返回的是個資料型別因為萬一乙個大的資料夾下面還有很多個小的資料夾呢。這裡我們獲取第乙個就好了就能獲得documents資料夾的路徑了。第三個引數是是否展開為完整路徑,表示將~展開成完整路徑,如果為no,列印的就是這個~/documents,否則就是完整路徑

nsstring * documentspath=nssearchpathfordirectoriesindomains(nsdocumentdirectory, nsuserdomainmask, yes)[0];
往documents資料夾中寫plist檔案怎麼寫?如下所示

nsstring * documentspath=nssearchpathfordirectoriesindomains(nsdocumentdirectory, nsuserdomainmask, yes)[0];

nsarray * array=@[@"哈哈",@"嘿嘿"];

[array writetofile:filepath atomically:yes];

nslog(@"%@",documentspath);

取出plist檔案中的資料

nsarray * array=[nsarray arraywithcontentsoffile:filepath];
,

應用程式沙盒

1,檔案儲存策略 1.1單個檔案永續性 1.2 多個檔案永續性 優勢 延遲載入使用者資料 方便釋放閒置的記憶體 缺點 增加了應用程式的複雜性 1.3持久儲存應用程式資料 獲取路徑 獲取應用程式沙盒document nsarray paths nssearchpathfordirectoriesind...

iOS學習之應用程式沙盒

每個ios應用都有自己的應用沙盒 應用沙盒就是檔案系統目錄 與其他檔案系統隔離 這點在ios8已經改變 沙盒目錄如下 應用程式包 上圖中的layer 包含了所有的資源檔案和可執行檔案 documents 儲存應用執行時生成的需要持久化的資料,itunes同步裝置時會備份該目錄。例如,遊戲應用可將遊戲...

應用程式沙盒的概念

1 ios應用程式沙盒概念 ios應用程式只能在為程式建立的檔案系統中讀取檔案,不可以去其它地方訪問,此區域被成為沙盒,所以所有的非 檔案都要儲存在此,例如影象,圖示,聲音,映像,屬性列表,文字檔案等。每個應用程式都有自己的儲存空間 應用程式不能翻過自己的圍牆去訪問別的儲存空間的內容 應用程式請求的...