我有Xamarin Forms应用程序。我正在使用PCL存储来保存来自网络的图像。此存储的路径(FileSystem.Current.LocalStorage)是:
“/数据/用户/ 0 / com.MyApp /文件”
在我的Android手机上,当我进入设置 - >应用程序管理器 - > MyApp->存储 - >存储使用 - >更改并将应用程序放到SD卡时,LocalStorage的路径不会更改。它仍然是:
“/数据/用户/ 0 / com.MyApp /文件”
为什么没有改变?
答案 0 :(得分:1)
LocalStorage
文件夹将始终保持不变,不是动态的,也不依赖于您的应用的运行位置。
我怀疑它是命名的东西或是指与Microsoft使用本地和漫游文件夹实现的类似概念。本地文件夹旨在保留在您运行的本地设备上(但仍位于固定位置),并且漫游文件夹的内容可以跨多个设备或平台同步。但最后一部分只是对我的猜测。
如果您想要写入其他文件夹,则必须超越PCLStorage并开始编写dependency services。有关SpecialFolder枚举列表,请参阅this文档页面。在Xamarin论坛上的旧论坛post上也有一些有用的信息。
修改的
当然,我们可以看到回购代码中发生了什么。 Here您可以看到,对于Android,LocalStorage
文件夹是Android上的MyDocuments
文件夹。正如您自己发现的那样,它将始终映射到同一文件夹。如果你想在SD卡上有东西,你必须自己处理。