从 Xamarin ios 中的 url 下载图像的最佳方法是啥?
Posted
技术标签:
【中文标题】从 Xamarin ios 中的 url 下载图像的最佳方法是啥?【英文标题】:What is the best way to download image from url in Xamarin ios?从 Xamarin ios 中的 url 下载图像的最佳方法是什么? 【发布时间】:2018-03-24 14:22:46 【问题描述】:我需要为每次平移和捏缩放下载打开街道地图图块。我使用 WebClient 从 Uri 下载图像。但我收到“一个 HttpWebRequest 已添加到连接组队列,因为已达到连接 linit,很快,我在 Xamarin ios 中收到 System.Net.WebException。但我在 Xamarin.android 中也是如此,其中的图像下载比 Xamarin iOS 好。
WebClient webClient = new WebClient();
byte[] imageBytes = null;
Uri uri = new Uri("http://tile.openstreetmap.org/" + Scale.ToString() + "/" + i.ToString() + "/" + j.ToString() + ".png");
imageBytes = await webClient.DownloadDataTaskAsync(uri);
【问题讨论】:
【参考方案1】:在 iOS 上我们可以使用NSUrlSession 来下载图片,这可能对你更有帮助。使用方法可以参考以下代码:
NSUrlSession session = NSUrlSession.SharedSession;
var dataTask = session.CreateDataTask(new NSUrlRequest(new NSUrl("yourUrl")), (data, response, error) =>
if (response != null)
DispatchQueue.MainQueue.DispatchAsync(() =>
MyImageView.Image = UIImage.LoadFromData(data);
);
);
dataTask.Resume();
【讨论】:
你能分享一个更完整的例子吗?在如何使用它以上是关于从 Xamarin ios 中的 url 下载图像的最佳方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 PCL 支持从 xamarin 跨平台项目中的 URL 下载文件
无法从UIKit.UIImage转换为ZXing.LuminanceSource - 2017年Visual Studio中的Xamarin iOS
从 Xamarin / C# 中的 URL 加载的 UIImage