1. Mitglieder surfen ohne Werbung auf Android-Hilfe.de! ✔ Jetzt kostenlos Mitglied in unserer Community werden.
  1. Sico, 09.05.2010 #1
    Sico

    Sico Threadstarter Fortgeschrittenes Mitglied

    Hallo,

    ich habe hier mal ein bischen Code zum Thema DateiDownload mit Progressbar...

    Meine Frage, kann man das noch einfacher, eleganter lösen?

    Code:
    package de.download;
    
    import java.io.BufferedOutputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.net.HttpURLConnection;
    import java.net.MalformedURLException;
    import java.net.URL;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.os.Handler;
    import android.os.Message;
    import android.widget.ProgressBar;
    import android.widget.TextView;
    
    
    public class download extends Activity {
        
        
        clockThread thread;
        TextView tv1,tv2;
        ProgressBar pg1;
        long numWritten = 0;
        int contentLength;
    
            @Override
            public void onCreate(Bundle icicle) {
    
                    super.onCreate(icicle);
                    setContentView(R.layout.main);
                    tv1 = (TextView) findViewById(R.id.TextView01);
                    tv2 = (TextView) findViewById(R.id.TextView02);
                    pg1 = (ProgressBar) findViewById(R.id.progressbar_Horizontal);
                    thread = new clockThread();
                    
                        thread.start();
                    
    
                    }
            
            private class clockThread extends Thread {
                @Override public void run() {
                   
    
            DownloadFromUrl("http://cyanogen-updater.googlecode.com/files/update-cm-5.0.7-DS-test3-signed.zip","/sdcard/test.zip");
                }}
                    
            private Handler showAdressResults = new Handler() {
                  public void handleMessage(Message msg) {
                      pg1.setMax(contentLength);
                      pg1.setProgress((int)numWritten);
                      tv2.setText("Downloadgröße: "+new Integer(contentLength).toString());  
                    tv1.setText("Downloade: "+new Long(numWritten).toString());  
                  }
                
            };
            
            
            public void DownloadFromUrl(String DURL, String fileName) {  
                    
                        
                        
                        try {
                            
                            String urlStr = DURL;
                            URL url = new URL(urlStr);
                            HttpURLConnection httpConn = (HttpURLConnection) url.openConnection();
                            contentLength = httpConn.getContentLength();
                            
                            
                            OutputStream out = new BufferedOutputStream(
                            
                            new FileOutputStream(fileName));
                            InputStream inStream = httpConn.getInputStream();
                            
                            byte[] buffer = new byte[1024];
                            
                            int numRead;
                            
                            
                            
                            while ((numRead = inStream.read(buffer)) != -1) {
                            
                            out.write(buffer, 0, numRead);
                            
                            numWritten += numRead;
                            showAdressResults.sendEmptyMessage(0);
                            }
                            
                            
                            httpConn.disconnect();
                            
                            
                           
    
                        } catch (MalformedURLException e) {
                            
                            e.printStackTrace();
                        } catch (IOException e) {
                            
                            e.printStackTrace();
                        }
                        
                    
                     
                    
            }
    
            
    }
    
    
    
    
            
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
methoden holen geht nicht mehr. Android App Entwicklung 30.06.2018
Fehler beim Download bestimmter Webseiten mit httpGet Android App Entwicklung 19.04.2018
Daten von Android Wear zur Handy-App senden geht nicht Android App Entwicklung 03.04.2018
File Download Android App Entwicklung 02.02.2018
[OFFEN] Verständnisprobleme: APK Expansion Files für eine APK > 100MB Android App Entwicklung 10.09.2017
Du betrachtest das Thema "File Download....gehts auch einfacher, eleganter?" im Forum "Android App Entwicklung",
  1. Android-Hilfe.de verwendet Cookies um Inhalte zu personalisieren und dir den bestmöglichen Service zu gewährleisten. Wenn du auf der Seite weitersurfst stimmst du der Cookie-Nutzung zu.  Ich stimme zu.