如何查看下载的文件当使用Xamarin Android进行另一次下载时
问题描述:
我正在使用Xamarin android实现移动应用程序。我已经实现了一个代码,通过点击按钮来下载.PDF和.Mobi文件。我已经使用了下面的代码。如何查看下载的文件当使用Xamarin Android进行另一次下载时
...
await Task.WhenAll(DownloadPDF(), DownloadMobi());
}
private async Task DownloadPDF()
{
var httpclient = new HttpClient(new AndroidClientHandler());
using (var stream = await httpclient.GetStreamAsync("http://files/file.pdf"))
using (var file = System.IO.File.Create("path/to/file.pdf"))
{
await stream.CopyToAsync(file);
await file.FlushAsync();
}
}
private async Task DownloadMobi()
{
var httpclient = new HttpClient(new AndroidClientHandler());
using (var stream = await httpclient.GetStreamAsync("http://files/file.mobi"))
using (var file = System.IO.File.Create("path/to/file.mobi"))
{
await stream.CopyToAsync(file);
await file.FlushAsync();
}
}
它同时下载两个文件。我想先下载PDF文件。一旦下载了PDF文件,按钮文本应该从“下载”更改为“查看PDF”。当点击查看PDF文件时,应该在PDF阅读器中打开该文件。移动文件下载应该在此过程之后开始,下载应该在后台进行。 你可以任何人建议你的想法来实现这一目标吗?
答
由于你没有显示任何UI的东西,我想你已覆盖到我将省略。
而是写的:await Task.WhenAll(DownloadPDF(), DownloadMobi());
做Task
var task = DownloadPDF();
task.ContinueWith((pdfDownloadTask)=> DownloadMobi());
以下
await DownloadPDF();
// update button to display "View PDF"
// add button click listener (optional if it's already registered)
// open file in PDF reader
await DownloadMobi();
嗨。恐怕这是不够的信息。你试过什么了?你的代码的其余部分在哪里? – woelliJ