我将网站加载到WebView中,然后使用“下载管理器”从我的网站下载照片文件。文件已成功下载,我可以在内部存储/下载中找到该文件。
我使用Environment.DIRECTORY_DOWNLOAD将文件存储到Download Directory,这是我下载文件的完整代码:
webView.setDownloadListener(new DownloadListener() {
@Override
public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimeType, long contentLength) {
if(isStoragePermissionGranted()) {
DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
request.setMimeType(mimeType);
//------------------------COOKIE!!------------------------
String cookies = CookieManager.getInstance().getCookie(url);
request.addRequestHeader("cookie", cookies);
//------------------------COOKIE!!------------------------
request.addRequestHeader("User-Agent", userAgent);
request.setDescription("Downloading file...");
request.setTitle(URLUtil.guessFileName(url, contentDisposition, mimeType));
request.allowScanningByMediaScanner();
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOAD, URLUtil.guessFileName(url, contentDisposition, mimeType));
DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
dm.enqueue(request);
Toast.makeText(getApplicationContext(), "Downloading File", Toast.LENGTH_LONG).show();
}
}
});
但是当我打开我的画廊照片时,我无法打开照片。点击照片时会显示“无法打开”。我检查文件详细信息,文件路径参考/ storage / emulated / 0 / Download。
为什么我的图库中的图像文件路径显示不同的路径?以及如何解决这个问题?
答案 0 :(得分:0)
没有常数Environment.DIRECTORY_DOWNLOAD
您应该设置Environment.DIRECTORY_DOWNLOADS
。
还有更具体的选项,如:Environment.DIRECTORY_PICTURES
。它适用于图像下载。
文档中描述了完整列表:https://developer.android.com/reference/android/os/Environment.html