class fileDownLoadTask extends Thread {
    	InputStream is = null;
    	@Override
    	public void run() {
    		file = new File("/sdcard/1.mp3");     		
    		try {    			
    			ftp.setFileType(FTP.BINARY_FILE_TYPE);	
    			fos = new FileOutputStream(file);     			
    			is = ftp.retrieveFileStream("1.mp3");
    			int downloadedSize = 0;
    			int totalSize = 9036974;
    			OutputStream os = new FileOutputStream(file);
    			byte[] buf = new byte[2048];
    			int len = 0;
    			while((len = is.read(buf)) > 0) {
    				os.write(buf, 0, len);    				    				
    				downloadedSize += len;    				
    				if (!mp.isPlaying()) {
    					if ((totalSize/5) < downloadedSize) { 
    						loadAudio();
        					play();
    					}        				
    				}
    					    				    				    			
    				Log.d("ftp", Integer.toString(downloadedSize));    				
    			}
    			    			
    			os.close();
    			is.close();
    			
    			    			
    		} catch (Exception e) {
    			System.out.println("IO Exception DownLoadTask : " + e.getMessage());
    			FTPdownError = e.getMessage();
    			mHandler.sendEmptyMessage(5);
    		}
    		
    		mHandler.post(new Runnable() {
				
				@Override
				public void run() {
					download.setText("Download Complete");
					pb.setVisibility(ProgressBar.INVISIBLE);					
					
				}
			});
    	}
    }


이런식으로 파일을 가져와서 플레이 시키는데요

이게 말이죠 플레이 될 당시에 파일 크기만 가지고 그동안만 플레이가 됩니다. ㅠ

플레이 되기 전에 30초 정도 다운을 받았다면 30초만 플레이 되는거죠 파일은 전부 다운로드 받았는데두요 


이것을 다운로드 받으면서 끝까지 재생시킬수는 없는건가요 ㅠ

여럿 고수분들의 답변을 부탁드릴께요