Autore Topic: Download Allegati  (Letto 546 volte)

Offline salvatore.zagarella

  • Utente normale
  • ***
  • Post: 239
  • Respect: +2
    • Mostra profilo
    • Ieeng Solution
Download Allegati
« il: 17 Settembre 2013, 10:04:36 CEST »
0
Salve ragazzi,
ho realizzato un app che visualizza i contenuti all'interno di una webView. Tutto funziona tranne che il download degli allegati: se apro la stessa pagine da firefox funziona mentre da dentro l'app no. Bisogna per caso abilitare qualche opzione dal manifest o simili?

Grazie...

Post unito: 17 Settembre 2013, 17:10:36 CEST
Ragazzi ho trovato questa classe che scarica i file. Il download avviene ma al termine, quando clicco sul file scaricato, mi dice "Questo documento non può essere aperto".
Ecco la classe:
Codice (Java): [Seleziona]
class DownloadFileFromURL extends AsyncTask<String, String, String> {
 
        private String file_url = "";
    /**
     * Before starting background thread
     * Show Progress Bar Dialog
     * */

    @Override
    protected void onPreExecute() {
        super.onPreExecute();
       
    }
 
    /**
     * Downloading file in background thread
     * */

    @Override
    protected String doInBackground(String... f_url) {
        int count;
        try {
            file_url = f_url[1]; //nome del file
               
                URL url = new URL(f_url[0]);
            URLConnection conection = url.openConnection();
            conection.connect();
             
            // input stream to read file - with 8k buffer
            InputStream input = new BufferedInputStream(url.openStream(), 8192);
 
            // Output stream to write file
            OutputStream output = new FileOutputStream(Environment.getExternalStorageDirectory().getPath() + "/Download/" + f_url[1]);
 
            byte data[] = new byte[1024];
 
            while ((count = input.read(data)) != -1) {
                 
                // writing data to file
                output.write(data, 0, count);
            }
 
            // flushing output
            output.flush();
 
            // closing streams
            output.close();
            input.close();
 
        } catch (Exception e) {
            Log.e("Error: ", e.getMessage());
        }
 
        return null;
    }
 
    /**
     * Updating progress bar
     * */

    protected void onProgressUpdate(String... progress) {
        // setting progress percentage
       
   }
 
    /**
     * After completing background task
     * Dismiss the progress dialog
     * **/

    @Override
    protected void onPostExecute(String file) {
        Log.i("END", file_url);
    }
 
}

Consigli??

Post unito: 18 Settembre 2013, 13:06:23 CEST
Ragazzi ho provato col DownloadManager ed in effetti, se vado a mettere il link diretto al file, il download avviene correttamente.
Il problema è che dovrei fare il downlaod di un file caricato su un forum ipb e non ho il link diretto, bensì un id che poi la piattaforma "trasforma" nel file di interesse; il problema è che invece di scaricare un file da 1.6 mega, ne scarico una parte di soli 3k...

Potete aiutarmi per favore?
« Ultima modifica: 18 Settembre 2013, 13:06:24 CEST da salvatore.zagarella, Reason: Merged DoublePost »