【发布时间】:2020-05-13 22:07:08
【问题描述】:
我正在开发一个 Xamarin 应用程序,它从数据库中检索信息,拍摄/选择照片并将它们上传到远程服务器,从远程服务器显示这些图像,用户可以通过点击并按下按钮来删除它们并下载图像从远程服务器到本地设备。
一切正常,但是当我下载图像并去画廊检查后,图像没有出现,而我可以看到它并在文件资源管理器中打开。当我重新启动手机时,图片会出现在图库中。
下面是我目前的按钮下载方式:
private void button_download_image_Clicked(object sender, EventArgs e)
{
Uri image_url_format = new Uri(image_url);
WebClient webClient = new WebClient();
try
{
byte[] bytes_image = webClient.DownloadData(image_url_format);
Stream image_stream = new MemoryStream(bytes_image);
string dest_folder = Android.OS.Environment.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryDownloads).ToString();
string file_name = System.IO.Path.GetFileName(image_url_format.LocalPath);
string dest_path = System.IO.Path.Combine(dest_folder, file_name);
using (var fileStream = new FileStream(dest_path, FileMode.Create, FileAccess.Write))
{
image_stream.CopyTo(fileStream);
}
}
catch (Exception ex)
{
DisplayAlert("Error", ex.ToString(), "OK");
}
DisplayAlert("Alert", "Download completed!", "OK");
}
我在另一台设备上尝试过,但我得到了相同的行为。
可能有某种东西不会刷新图库。
知道如何强制画廊刷新或类似的东西吗?
【问题讨论】:
-
您的问题已经被报告了一百次,所以用 google 搜索这两个代码行的解决方案应该不难。您也可以重新启动设备。
-
@blackapps 抱歉,我没有发现任何对我的情况有用的东西,而且每次下载图像时我都无法重新启动设备..
-
不,当然不是。它只是对您的
Any idea how to force the gallery to refresh的回答。
标签: c# android image xamarin.forms download