2017-11-11 276 views
2

我是Xamarin.Forms和移動開發新手。我想將我的應用程序用戶的用戶和加密密碼存儲在移動設備上的文件中。我正在使用xamarin表單技術。我知道有很多differenet文件夾。在例如:Xamarin.Forms中用於存儲應用程序數據的最佳Environment.SpecialFolder是什麼?

System.Environment.SpecialFolder.Personal 
System.Environment.SpecialFolder.LocalApplicationData 
System.Environment.SpecialFolder.MyDocuments 

全部列表,你可以在這裏找到:https://msdn.microsoft.com/en-gb/en-enl/library/system.environment.specialfolder(v=vs.110).aspx

什麼是店裏最好的文件夾/目錄:

  • 用戶名和密碼數據
  • 其他應用specyfic數據

?? ??

編輯:我發現「個人」對我很好,但是如果你有其他答案,也可以發佈。 SpecialFolder.Personal location

回答

4

存放小鍵值對:

Xamarin.Forms實現Application.Current.Properties存儲在應用程序和訪問這些鍵值對的本地存儲的鍵值數據是安全的到應用程序只有誰存儲他們。

存儲文件/數據庫(SQLite的):

每個平臺都有它自己的文件夾結構下存儲的應用程序特定的數據/文件。

的Android

Environment.SpecialFolder.Personal & MyDocuments都映射到:/data/data/@[email protected]/files

Environment.SpecialFolder.LocalApplicationData映射爲:/data/data/@[email protected]/files/.local/share

我們可以存儲在任何基於它們是如何在文件中映射上述目錄的文件系統。 上述目錄都不能被其他應用程序訪問,用戶也不能在世界之外訪問它們,除非電話是根植的。

的iOS

Environment.SpecialFolder.Personal, LocalApplicationData & MyDocuments所有地圖:/Documents

iOS版具有以下目錄結構:

/Documents 
/Library 
/Library/Application Support 
/Library/Caches 
/tmp 

/Documents如果iTunes共享,在打開的iTunes獲取可見info.plist在應用程序中。內容可以由iTunes/iCloud備份。

/LibraryiTunes中不可見。可以通過iTunes/iCloud備份,但Caches目錄除外。

不需要公開給用戶的文件/數據應存儲在庫目錄中。防爆。數據庫文件。我會去尋求Library目錄以加密安全性(如果需要的話)。

要到庫路徑:

Path.Combine(Environment.GetFolderPath (Environment.SpecialFolder.MyDocuments), "..", "Library"); 

要了解更多關於每個枚舉的映射與目錄Go Here

查找有關iOS File System Basics的基本信息。

相關問題