2015-05-28 5 views
7

मेरी Android एप्लिकेशन में मैं अपने एसडी कार्ड में एक फ़ाइल डाउनलोड करने और उद्देश्यों के माध्यम से इसे देखने के, मैं अपने आवेदन में सभी नेटवर्क कॉल के लिए वॉली पुस्तकालय का उपयोग कर रहा करने की जरूरत है। विचार।कैसे sdcard में फ़ाइलों (pdf, doc आदि ...) डाउनलोड करने और एंड्रॉयड में वॉली का उपयोग कर फ़ाइल को खोलने के लिए?

उत्तर

3
class DownloadFileFromURL extends AsyncTask<String, String, String> { 

    /** 
    * Before starting background thread 
    * Show Progress Bar Dialog 
    * */ 
    @Override 
    protected void onPreExecute() { 
     super.onPreExecute(); 
     showDialog(progress_bar_type); 
    } 

    /** 
    * Downloading file in background thread 
    * */ 
    @Override 
    protected String doInBackground(String... f_url) { 
     int count; 
     try { 
      URL url = new URL(f_url[0]); 
      URLConnection conection = url.openConnection(); 
      conection.connect(); 
      // this will be useful so that you can show a tipical 0-100%   progress bar 
      int lenghtOfFile = conection.getContentLength(); 

      // download the file 
      InputStream input = new BufferedInputStream(url.openStream(), 8192); 

      // Output stream 
      OutputStream output = new FileOutputStream("/sdcard/downloadedfile.jpg"); 

      byte data[] = new byte[1024]; 

      long total = 0; 

      while ((count = input.read(data)) != -1) { 
       total += count; 
       // publishing the progress.... 
       // After this onProgressUpdate will be called 
       publishProgress(""+(int)((total*100)/lenghtOfFile)); 

       // 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 
     pDialog.setProgress(Integer.parseInt(progress[0])); 
    } 

    /** 
    * After completing background task 
    * Dismiss the progress dialog 
    * **/ 
    @Override 
    protected void onPostExecute(String file_url) { 
     // dismiss the dialog after the file was downloaded 
     dismissDialog(progress_bar_type); 

     // Displaying downloaded image into image view 
     // Reading image path from sdcard 
     String imagePath = Environment.getExternalStorageDirectory().toString() + "/downloadedfile.jpg"; 
     // setting downloaded into image view 

    } 

} 

}

+1

आप मेरे सवाल है कि मैं वॉली लाइब्रेरी का उपयोग कर लागू करना चाहते हैं में देख सकते हैं। वैसे भी आपकी प्रतिक्रिया – Manikanta

+0

वॉली Does not को के लिए धन्यवाद फ़ाइलें जैसा पीडीएफ डाउनलोड कर रहा है –

+0

धन्यवाद एक बहुत .. अपनी कार्यशील ठीक लिए किसी भी अनुरोध प्रदान करें। तुम मुझे फ़ाइलें ... (वॉली का उपयोग कर अगर यह समर्थन करता है) अपलोड करने के लिए कैसे पर मदद कर सकते हैं? – Manikanta

संबंधित मुद्दे