我是Xamarin.Forms和移动开发的新手。我想将我的应用程序用户的用户和加密密码存储在移动设备上的文件中。我使用的是xamarin表格技术。我知道有很多不同的文件夹。例如:
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
商店的最佳文件夹/目录是什么:
...
编辑:我发现"个人"对我有好处,但如果你有其他答案也可以发布。 SpecialFolder.Personal location
答案 0 :(得分:19)
存储小键值对:
Xamarin.Forms实现Application.Current.Properties
,它将键值数据存储在应用程序的本地存储中,对这些键值对的访问对于只存储它们的应用程序是安全的。
存储文档/数据库(Sqlite):
每个平台都有自己的文件夹结构来存储下面的应用程序特定数据/文件。
<强>的Android 强>:
Environment.SpecialFolder.Personal & MyDocuments
都映射到:/data/data/@PACKAGE_NAME@/files
Environment.SpecialFolder.LocalApplicationData
映射到:/data/data/@PACKAGE_NAME@/files/.local/share
我们可以根据文件系统中的映射方式将文件存储在上述任何目录中。 上述目录都不能被其他应用程序访问,除非手机是root用户,否则用户无法在世界范围内访问它们。
<强>的iOS 强>:
Environment.SpecialFolder.Personal, LocalApplicationData & MyDocuments
全部映射到:/Documents
iOS具有以下目录结构:
/Documents
/Library
/Library/Application Support
/Library/Caches
/tmp
/Documents
:在iTunes
中显示如果在应用中的info.plist
中启用了iTunes共享。内容可由iTunes/iCloud
备份。
/Library
: iTunes
中无法显示。除iTunes/iCloud
目录外,Caches
可以备份。
不需要向用户公开的文件/数据应存储在Library目录中。防爆。数据库文件。我会去Library
目录添加安全性和加密(如果需要)。
要进入图书馆路径:
Path.Combine(Environment.GetFolderPath (Environment.SpecialFolder.MyDocuments), "..", "Library");
了解有关目录Go Here的每个Enumeration映射的更多信息。
查找有关iOS File System Basics的基础知识。