MAUI Android为什么图像不保存?

xoefb8l8  于 2023-11-15  发布在  Android
关注(0)|答案(1)|浏览(179)

我尝试在Android上使用我的MAUI应用程序在本地保存一个图像。测试 if(File. pists(filePath)) 是肯定的。但是当我在Android上使用总命令或在Windows上使用文件资源管理器搜索此文件时,我找不到该文件。

  • filepath* 的值是:

/data/user/0/de.company.appname.beta/files/0001/UserProfileImage.png
使用Windows资源管理器搜索“de.company.appname.beta”,我会找到如下路径:
Dieser PC\Franks Galaxy A33 5G\SD-Karte\Android\data\de.company.appname.beta
但在这个文件夹中我只找到一个文件夹 “缓存”,而不是 “文件”
搜索文件名 “UserProfileImage.png” 没有结果。
我传递给SfAvatarView的字符串filePath。没有正确的图像可见。(这就是为什么我在保存图像时寻找问题。)在Windows上它工作,而不是在Android上。

为什么本地无法保存镜像?

try
{
    await File.WriteAllBytesAsync(_personDto.Image, Convert.FromBase64String(cleanPath));
}

字符串
不会抛出异常。

n3h0vuf2

n3h0vuf21#

我不知道“SfAvatarView”,但我怀疑它会离图像太远。
对于ImageView的源代码,Android喜欢缓存文件。当然是使用文件名。从你的固定文件名来看,我可以说它正在发生。
我有两个选择来解决这个问题:
第一个选项是不断更改文件名,这样它就不会缓存自己。第二个选项是清除该高速缓存目录。
我选择了第二个选择:
枚举此目录中的所有文件:

Path.Combine(FileSystem.CacheDirectory, "image_manager_disk_cache");

字符串
并执行删除。
最近,出现了其他解决方案:https://github.com/dotnet/maui/issues/9773

相关问题