使用FileOutputStream通过进度条下载Android ION

时间:2014-05-22 09:30:00

标签: android download fileoutputstream ion-koush

我尝试使用进度条修改下载示例中的koush代码,使其写入FileOutputStream而不是File,但是eclipse会给我以下错误:

  

方法progressHandler(new ProgressCallback(){})未定义   类型ResponseFuture

以下是代码:

File file = new File(DownloadPath, uri.getLastPathSegment());
FileOutputStream fos = null;
try {
    fos = new FileOutputStream(file);
} catch (FileNotFoundException e1) {
    // TODO Auto-generated catch block
}

Future<FileOutputStream> downloading = Ion.with(getApplicationContext())
    .load(uri)
    .write(fos)
    .progressHandler(new ProgressCallback() { 
        @Override
        public void onProgress(int downloaded, int total) {
            // inform the progress bar of updates in progress
        }
    })
    .setCallback(new FutureCallback<FileOutputStream>() {
       @Override
        public void onCompleted(Exception e, FileOutputStream file) {
            // download done...
            // do stuff with the File or error
        }
    });     

1 个答案:

答案 0 :(得分:7)

你好像搞砸了订单。请试试这个:

Future<FileOutputStream> downloading = Ion.with(getApplicationContext())
    .load("http://example.com/test.txt")
    .progressHandler(new ProgressCallback() { 
        @Override
        public void onProgress(int downloaded, int total) {
            // inform the progress bar of updates in progress
        }
    })
    .write(fos)
    .setCallback(new FutureCallback<FileOutputStream>() {
       @Override
        public void onCompleted(Exception e, FileOutputStream file) {
            // download done...
            // do stuff with the File or error
        }
    });