Downloading WebView files to a custom folder

0

I want the files that are downloaded by my app that uses WebView to be in a custom folder. You are currently going to the "Downloads" folder and wanted it to be a folder with the name of the app and that folder is created automatically.

wb.setDownloadListener(new DownloadListener() {

            @SuppressLint("InlinedApi") public void onDownloadStart(String url, String userAgent,
                                                                    String contentDisposition, String mimetype,
                                                                    long contentLength) {
                DownloadManager.Request request = new DownloadManager.Request(
                        Uri.parse(url));

                request.allowScanningByMediaScanner();
                final String filename = URLUtil.guessFileName(url, contentDisposition, mimetype);
                request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED); //Notify client once download is completed!
                request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, filename);
                DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
                dm.enqueue(request);
                Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT); //This is important!
                intent.addCategory(Intent.CATEGORY_OPENABLE); //CATEGORY.OPENABLE
                intent.setType("*/*");//any application,any extension
                Toast.makeText(getApplicationContext(), "Baixando!", //To notify the Client that the file is being downloaded
                        Toast.LENGTH_LONG).show();

            }
        });

How do I do this in that code?

    
asked by anonymous 10.07.2016 / 01:43

1 answer

2

I think it's like this:

change this:
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, filename);
for request.setDestinationInExternalPublicDir(path,filename);

add:
File path = new File(Environment.getExternalStorageDirectory()+"/NomeDaPasta");
    or if(!path.exists()) path.mkdir();

So, look for the io.FIle library and mkdir , exist() , and isDirectory() methods.

    
10.07.2016 / 01:57