UWP 的應用程序存儲區有什麼區別?
01-15
看了下 Win10(8/8.1的應該也一樣)的相關 API,應用程序存儲區有好多啊:
這裡我有很多疑惑:①InstalledLocation 沒啥可解釋的,應用的安裝根目錄而已。
- Windows.ApplicationModel.Package.Current.InstalledLocation
- ApplicationData.Current.LocalFolder
- ApplicationData.Current.RoamingFolder
- ApplicationData.Current.TemporaryFolder
- ApplicationData.Current.LocalCacheFolder
- ApplicationData.Current.SharedLocalFolder
②LocalFolder 也知道,但適合放什麼數據?給個具體的例子唄
③RoamingFolder 理解,比如新聞應用,用戶的收藏列表就放在這了,如果有賬號就可以實現同步列表!④TemporaryFolder 和 LocalCacheFolder 有什麼區別?看文檔介紹:「臨時應用數據存儲(TemporaryFolder )類似於緩存。它的文件不會漫遊,隨時可以刪除。系統維護任務可以隨時自動刪除存儲在此位置的數據。用戶還可以使用「磁碟清理」清除臨時數據存儲中的文件。臨時應用數據可用於存儲應用會話期間的臨時信息。無法保證超出應用會話結束時間後仍將保留此數據,因為如有需要,系統可能回收已使用的空間。」
意思是說 TemporaryFolder 只是一個非常臨時性的文件夾,退出應用程序就有可能被刪除了?這樣的話,如果做一個新聞閱讀應用,(如果我想下次再離線情況下也能載入顯示之前看過的內容)新聞列表/內容的緩存應該放在 LocalCacheFolder 而不是 TemporaryFolder 中了?
②SharedLocalFolder 是什麼鬼?下圖是上述文件夾的實際面目(貌似沒有 SharedLocalFolder):
LocalFolder
是備份的,共用的,適合放遊戲存檔,會自動備份,在重新安裝的時候可還原。RoamingFolder
跨設備漫遊,會在多設備之間同步,適合放用戶設置習慣。TemporaryFolder
緩存文件夾,空間由系統管理,在不足的時候自動釋放,適合放緩存文件,比如題主所說的新聞內容。LocalCacheFolder
獨立應用文件夾,是不備份的,私密的,適合放私密數據,比如遊戲數據包。參考:Windows Phone 8.1 – LocalCacheFolderWindows Phone 8.1應用移植手記4:一些需要注意的地方(1)推薦閱讀:
※不在系統中"彈出"U盤就拔出U盤,是否會損壞U盤?
※怎麼讓我媽媽相信把文件存在網上沒有安全問題?
※內存條改造為U盤可行嗎?
※如何建立一個自己的資源庫 搜索關鍵字就能找到相應資源?
※求備份大量視頻文件的方案,選擇移動硬碟、台式機硬碟、還是光碟好?
TAG:C# | WindowsPhone開發 | 數據存儲技術 | UWPWindows開發 |