我正在使用DownloadManger(DOWNLOAD_SERVICE)从Firebase下载pdf。而且我可以下载它抛出recyclerView适配器。当我在模拟器上进行测试时,它会显示在模拟器的“下载”目录中。但是,在完成下载的真实设备中,我无法在下载目录中找到。
这是我的代码。
DownloadManager downloadmanager = (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE);
Uri uri = Uri.parse(url);
DownloadManager.Request request = new DownloadManager.Request(uri);
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
request.setDestinationInExternalFilesDir(context, destinationDirectory, fileName + fileExtension);
request.setDescription("Downloading");
downloadmanager.enqueue(request);
}
holder.mDownload.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
downloadFile(holder.title.getContext(),movieList.get(position).getBooksName(),".pdf",DIRECTORY_DOWNLOADS,movieList.get(position).getUrl());
}
});
permission
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
谢谢
我解决了我的问题问题是它正在targatedDevice 28或更低版本上运行,但在tagatedDevice 29上却没有运行。
现在如何解决我的问题以在29版上工作?
我正在使用DownloadManger(DOWNLOAD_SERVICE)从Firebase下载pdf。而且我可以下载它抛出recyclerView适配器。当我在模拟器上进行测试时,它会显示在模拟器上。Download ...
以Android 10及更高版本为目标的应用被授予对外部存储或范围存储的范围访问权限。