Xamarin - 使用 PCLStorage 镜像时 IO 操作失败

Xamarin - IO operations fail when using PCLStorage mirrors

所以我试图访问 Xamarin Forms 项目上的文件系统,我使用了几个项目,包括:

StandardStorage

StorageEverywhere

XamFileStorageNetStandard

所有都是 PCL 存储的网络标准镜像,不需要更改代码。

我可以从我的 Forms 项目中获取当前文件系统并获取本地存储的根文件夹,响应类似于:

"/data/user/0/com.companyname.APPNAME/files"

当我尝试在此路径上执行任何操作时,例如:

await FileUtility.RootFolder.CreateFolderAsync("test", CreationCollisionOption.FailIfExists);
await FileUtility.RootFolder.GetFoldersAsync();
await FileUtility.RootFolder.CreateFileAsync("test.txt", CreationCollisionOption.FailIfExists);

所有操作都只是阻塞而不是 return,在 OnePlus 6T 上测试。

有人知道这个的解决方案吗?

提前致谢。

更新:澄清在平台特定项目上也根据需要引用了这些库。

以后有问题的朋友,直接用System.IO来处理文件,貌似可以。

Environment.SpecialFolder.LocalApplicationData

使用它来访问您应用的本地存储。