android - 设置自定义文件夹 Android 下载管理器

标签 android download download-manager

我有一个关于下载管理器的问题。 我要从一个站点下载一个文件。当我设置默认下载目录(Environment.DIRECTORY_DOWNLOAD)时,一切正常,我的下载开始了。但是,如果我尝试更改目录,我的应用程序不会下载该文件。特别是,我希望我的文件进入下载中的文件夹,例如/storage/sdcard/Download/myFolder。我该如何解决?

File mydownload = new File (Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS)+ "/myFolder");

if (!mydownload.exists()){
    mydownload.mkdir();
}

String url = sUrl[0];
DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
    request.allowScanningByMediaScanner();
    request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
}

request.setDestinationInExternalPublicDir(mydownload.getAbsolutePath(),"Myfile.extension");


DownloadManager manager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
manager.enqueue(request);

最佳答案

检查下面的代码:它的保存文件在 "sdcard/dhaval_files/" 中。只需替换您的文件夹名称并在android list 文件中授予write_external_storage权限。

public void file_download(String uRl) {
        File direct = new File(Environment.getExternalStorageDirectory()
                + "/dhaval_files");

        if (!direct.exists()) {
            direct.mkdirs();
        }

        DownloadManager mgr = (DownloadManager) this.getSystemService(Context.DOWNLOAD_SERVICE);

        Uri downloadUri = Uri.parse(uRl);
        DownloadManager.Request request = new DownloadManager.Request(
                downloadUri);

        request.setAllowedNetworkTypes(
                DownloadManager.Request.NETWORK_WIFI
                        | DownloadManager.Request.NETWORK_MOBILE)
                .setAllowedOverRoaming(false).setTitle("Demo")
                .setDescription("Something useful. No, really.")
                .setDestinationInExternalPublicDir("/dhaval_files", "test.jpg");

        mgr.enqueue(request);

    }

关于android - 设置自定义文件夹 Android 下载管理器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16773348/

相关文章:

android - 停止使用 Android 原生相机保存照片

android - 如何防止应用程序被卸载?

linux - 如何在 wget 中的主机名内跟踪重定向?

android - 暂停/恢复 http 连接下载

android - 我无法在android studio中添加此库:编译 'com.android.support:design:24.0.0'

php - session_start() 导致 IE8 中通过 PHP 下载 PDF 变得困惑

java - 如何从服务器端下载文件到硬盘

android - 下载管理器 android 出错

c# - 带 IDownloadManager 的 Windows 窗体 Webbrowswer 控件

android - 启用/禁用来自android代码的使用数据包