我是Android新手,我正尝试使用URL链接下载pdf文件。下载操作完成后,将文件下载到Downloads目录中,并且该文件存在于该目录中。如果我试图使用意图打开pdf文件,则应用程序崩溃了,我很清楚我传递给Intent.setDataAndType()
的URI是错误的。如何获取下载文件的正确URI。
这是我的代码。
String url = "https://…";
DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
request.setDescription("Some descrition");
request.setTitle("Some title");
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
request.allowScanningByMediaScanner();
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
}
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "name-of-the-file.pdf");
DownloadManager manager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
manager.enqueue(request);
File file = new File(getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS) + "/name-of-the-file.pdf");
Uri uri = Uri.fromFile(file);
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(uri, "application/pdf");
context.startActivity(intent);
我在某个地方弄乱了传递给意图的路径。任何帮助都是可取的。预先感谢。