我想运行一个接受单个字符串并从服务器下载该文件的任务。 由于必须在不同的线程上执行网络相关的操作,我必须扩展AsyncTask。参考在线文档,我看到它需要三个参数,即参数,进度和结果。
我知道扩展像这样的类是有意义的
private class DownloadFileTask extends AsyncTask<URL, Integer, Long>
但是现在我只想下载文件而不显示任何进度或从函数中返回任何内容。
扩展这样的类会给我带来错误
private class DownloadFileTask extends AsyncTask<String, void, void>
{
protected void doInBackground(Sting url)
{ //code to simply download file , no progress shown , nothing returned
}
}
我也理解为实现类DownloadFileTask show覆盖方法
protected abstract Result doInBackground (Params... params)
原型中的结果是AsyncTask的第三个参数&lt; ...&gt;模板。所以我无法将其视为无效。但是,有没有办法简单地下载文件而不显示进度和结果?
答案 0 :(得分:3)
通用参数应该是对象,因此您应该传递Void
而不是void
。
....extends AsyncTask<String, Void, Void>