c# - Xamarin - 使用 PCLStorage 镜像时 IO 操作失败
问题描述
所以我试图访问 Xamarin Forms 项目上的文件系统,我使用了几个项目,包括:
都是 PCL Storage 的 Net Standard 镜像,无需更改代码。
我可以从我的 Forms 项目中获取当前文件系统并获取本地存储的根文件夹,响应类似于:
"/data/user/0/com.companyname.APPNAME/files"
当我尝试在此路径上执行任何操作时,EG:
await FileUtility.RootFolder.CreateFolderAsync("test", CreationCollisionOption.FailIfExists);
await FileUtility.RootFolder.GetFoldersAsync();
await FileUtility.RootFolder.CreateFileAsync("test.txt", CreationCollisionOption.FailIfExists);
所有操作都只是阻塞并且永不返回,在 OnePlus 6T 上进行了测试。
有谁知道这个的解决方案?
提前致谢。
更新:澄清在平台特定项目中也根据需要引用了这些库。
解决方案
对于以后遇到问题的人,只需使用 System.IO 来处理文件,显然它可以工作。
Environment.SpecialFolder.LocalApplicationData
使用它来访问您的应用程序的本地存储。
推荐阅读
- code-coverage - 如何更改 Bullseye tmp 目录路径?一个 rhel 机器中的多个用户不能同时使用
- android-jetpack-compose - 如何制作占据整个屏幕宽度的元素的 LazyRow?
- kubernetes - 如何在现有的裸机 kubernetes 集群中编辑 etcd 配置
- visual-studio-code - 有没有办法将 VSCode 配置为始终在新窗口中打开项目?
- python - 如何在python 3中生成随机浮点数
- oracle-apex - 如何通过使用 BI Publisher 在 APEX 中传递参数来打印单个查询
- javascript - highlight.js 的自定义语言定义
- c - 使用 sem_t 时大小为 8 的无效写入
- angular - 如何在 ftl 文件中获取当前页面 url
- javascript - Angular 模板未在 RxJS 可观察更改上更新