在Xamarin Android应用程序中下载并打开pdf?

时间:2017-05-25 15:56:35

标签: c# android xamarin xamarin.android

我正在尝试从Xamarin Android中的URL下载并打开PDF文件。我可以打开URL没问题,这当然将PDF保存在Downloads文件夹中。有没有办法可以访问同一个文件并在我的应用程序中下载后自动打开?以下是我目前打开下载URL的方法:

Intent i = new Intent(Intent.ActionView);
Intent browserIntent = new Intent(Intent.ActionView, Uri.Parse("http://sampleURL.com"));

StartActivity(browserIntent);

1 个答案:

答案 0 :(得分:1)

您首先必须知道下载文件的名称。

然后你可以这样做

var filename = "file.pdf";
var file = System.IO.Path.Combine(Android.OS.Environment.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryDownloads).ToString(), filename);
var uri = Android.Net.Uri.Parse(file);

Intent intent = new Intent(Intent.ActionView);
intent.SetFlags(ActivityFlags.ClearTop);
intent.SetDataAndType(uri, "application/pdf");
try
{
    StartActivity(intent);
}
catch (ActivityNotFoundException e)
{
    Toast.MakeText(Application.Context, "Install a pdf viewer.", ToastLength.Long).Show();
}