2016-11-24 14 views
0

ダウンロードは正常に動作しますが、ファイル名と同じ名前を付けてダウンロードする方法を教えてください。webviewを使用してダウンロードしたファイルの名前を正しく指定するにはどうすればよいですか?

webView.setDownloadListener(new DownloadListener() { 
       public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimetype, long contentLength) { 
        //for downloading directly through download manager 
        DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url)); 
        request.allowScanningByMediaScanner(); 
        request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED); 
        request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "downloads"); 
        DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE); 
        dm.enqueue(request); 

       } 
      }); 

答えて

0
mWebView.setDownloadListener(new DownloadListener() {  

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

     request.allowScanningByMediaScanner(); 
     request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED); //Notify client once download is completed! 
     request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "Name of your downloadble file goes here, example: Mathematics II "); 
     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(), "Downloading File", //To notify the Client that the file is being downloaded 
       Toast.LENGTH_LONG).show(); 

    } 
}); 
+0

ファイルの同じ名前を取得する方法はありますか? –

+0

はい使用することができます –

+0

final String [] separated = url.split( "/"); final文字列myFile = separated [separated.length - 1];次に、request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS、myFile);を呼び出します。 –

関連する問題