繁体   English   中英

如何在 DownloadManager 中设置下载目录?

[英]How to set download directory in DownloadManager?

我正在使用 DownloadManager 但它把下载放在我不知道的地方。 我想将文件下载到特定文件夹中,例如 sdcard 中的“mp3”。

这是我正在使用的代码:

private class HelloWebViewClient extends WebViewClient {

    @Override
    public boolean shouldOverrideUrlLoading(WebView webview, String url)
    {
        if(url.endsWith(".mp3") || !url.startsWith("http://xnm")) {
            String servicestring = Context.DOWNLOAD_SERVICE;
            DownloadManager downloadmanager;
            downloadmanager = (DownloadManager) getSystemService(servicestring);
            Uri uri = Uri.parse(url);
            DownloadManager.Request request = new Request(uri);
            Long reference = downloadmanager.enqueue(request);

            setProgressBarIndeterminateVisibility(false);
         }
         else {
             mWebView.loadUrl(url);
             setProgressBarIndeterminateVisibility(true);
         }

        return true;
    }
    @Override
    public void onPageFinished(WebView webview, String url){
        super.onPageFinished(webview, url);
        setProgressBarIndeterminateVisibility(false);
     }

}

提前致谢 !!

File file = new File(Environment.getExternalStorageDirectory(), "mp3")
request.setDestinationUri(Uri.fromFile(file));

设置下载路径

实际上我在搜索了很多之后让它工作了,这里是添加到现有代码中的代码。

File folder = new File(Environment.getExternalStorageDirectory() + "/any");
            if (!folder.exists()) {
                folder.mkdir();
            }
DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
request.setDestinationInExternalPublicDir("/Download/Global Mp3", nameOfFile);

我们在清单文件中需要这个权限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

就是这样 !!! 也许它会帮助别人

request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, fileName);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM