ineedmoney Posté(e) 8 décembre 2015 Share Posté(e) 8 décembre 2015 (modifié) Bonjour,À travers webview, j'effectue des téléchargement depuis un serveur Web.Les fichiers sont stockés sur le serveur avec un nom du type :123~~456~~Variable1_-_Variable2.ext123~~456~~Variable3_-_Variable4.ext123~~456~~Variable5_-_Variable6.extÀ travers mon application, je souhaiterais que lors du téléchargement d'un fichier, le nom du fichier réceptionné soit changé dans ce sens :Variable1_-_Variable2[mot_statique].extJe ne souhaite pas changer le nom du fichier sur mon serveur, mais bien que celui-ci soit différent une fois stocké localement.Merci de votre aide... Mon fichier d'activité : package com.monsite import android.annotation.SuppressLint; import android.app.Activity; import android.app.DownloadManager; import android.app.DownloadManager.Request; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.os.Environment; import android.view.Menu; import android.view.MenuItem; import android.webkit.DownloadListener; import android.webkit.WebChromeClient; import android.webkit.WebSettings; import android.webkit.WebSettings.PluginState; import android.webkit.WebView; import android.webkit.WebViewClient; @SuppressLint("SetJavaScriptEnabled") public class MainActivity extends Activity { @[member=override] protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); WebView myWebView = (WebView) findViewById(R.id.webview); myWebView.setWebViewClient(new WebViewClient()); WebSettings webSettings = myWebView.getSettings(); webSettings.setDomStorageEnabled(true); webSettings.setJavaScriptEnabled(true); webSettings.setDomStorageEnabled(true); webSettings.setPluginState(PluginState.ON); webSettings.setJavaScriptCanOpenWindowsAutomatically(true); myWebView.loadUrl("http://www.monsite.com"); } public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimetype, long contentLength) { //for downloading directly through download manager Request request = new Request(Uri.parse(url)); request.allowScanningByMediaScanner(); request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED); final String[] separated = url.split("/"); final String myFile = separated[separated.length - 1]; request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, myFile); DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE); dm.enqueue(request); } @[member=override] public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } @[member=override] public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } } Modifié 9 décembre 2015 par ineedmoney Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
gob0 Posté(e) 9 décembre 2015 Share Posté(e) 9 décembre 2015 Salut, le nom du fichier est donné par cette ligne: final String myFile = separated[separated.length - 1]; Tu peux donc le transformer comme bon te semble. Exemple: final String myFile = separated[separated.length - 1].replace("123~~456~~", "").replace(".ext", "STATIQUE.ext"); 1 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
ineedmoney Posté(e) 9 décembre 2015 Auteur Share Posté(e) 9 décembre 2015 Parfait, merci beaucoup :) Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Rejoignez la conversation
Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.