Descarga de archivos zip en android

Tengo una aplicación para descargar el contenido del archivo zip de la caja de la gota (que es el camino compartido públicamente). I escribió el código de descarga utilizando HttpURLConnection pero no funciona como estaba previsto y en su lugar está descargando una pequeña porción (después de descargar el archivo zip que muestra 31 kb, pero su tamaño original es de 3 MB). Estoy atando mi código. Por favor ayúdame a resolver esto.

URL url = new URL("drop box public share url"); //create the new connection HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); urlConnection.setAllowUserInteraction(false); urlConnection.setInstanceFollowRedirects(true); urlConnection.setConnectTimeout(5 * 1000); urlConnection.setRequestMethod("GET"); urlConnection.setDoOutput(true); urlConnection.setDoInput(true); urlConnection.connect(); File SDCardRoot = Environment.getExternalStorageDirectory(); File file = new File(SDCardRoot,"/download/sample.zip"); FileOutputStream fileOutput = new FileOutputStream(file); InputStream inputStream = urlConnection.getInputStream(); int totalSize = urlConnection.getContentLength(); int downloadedSize = 0; //create a buffer... byte[] buffer = new byte[1024]; int bufferLength = 0; while ( (bufferLength = inputStream.read(buffer)) > 0 ) { fileOutput.write(buffer, 0, bufferLength); downloadedSize += bufferLength; onProgressUpdate(downloadedSize, totalSize); } //close the output stream when done fileOutput.close(); inputStream.close(); 

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.