2012-08-23 4 views
0

단일 문자열을 허용하고 서버에서 해당 파일을 다운로드하는 작업을 실행하고 싶습니다. 네트워크 관련 작업을 다른 스레드에서 수행해야하므로 AsyncTask를 확장해야합니다. 온라인 의사를 참조하면 Params, Progress 및 Result라는 세 가지 매개 변수가 필요하다는 것을 알 수 있습니다.android asyncTask <String, void, void> 진행 및 결과없이 파일을 다운로드하십시오.

는 나는이

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 
     } 
    } 

나는 또한 프로토 타입의 결과는 AsyncTask를 <의 세 번째 매개 변수보다 우선 구현 클래스 DownloadFileTask 쇼 같은 방법

protected abstract Result doInBackground (Params... params) 

을 이해 ...> 템플릿. 그래서 나는 그것을 무효로 할 수 없습니다. 하지만 진행 상황과 결과를 보여주지 않고 단순히 파일을 다운로드 할 수있는 방법이 없습니까?

답변

3

일반 인수는 개체 여야하므로 void 대신 Void을 전달해야합니다.

....extends AsyncTask<String, Void, Void>