Android 프로그래밍 및 스레드에 익숙하지 않습니다. 원격 서버에서 그림을 가져 와서 표시하고 싶습니다. (지금까지 작동합니다 ^^) 사진은 카메라에서 가져온 것이므로 이전에 다운로드 한 사진을 표시하자 마자 새 사진이 필요합니다. 즉, 실은 결코 그림을 움켜 쥐지 않아야한다는 것을 의미합니다. (활동이 오래 지속됨에 따라)
또한 서버에 대한 연결을 설정 한 다음 HTTP 가져 오기를 수행하기 만하면됩니다. 그래서 스레드가 사용할 수있는 매개 변수 "연결"을 가져야합니다.Android - 반복적으로 스레드 실행
private class DownloadImageTask extends AsyncTask<URLConnection, Void, Bitmap> {
/** The system calls this to perform work in a worker thread and
* delivers it the parameters given to AsyncTask.execute() */
private URLConnection connection = null;
protected Bitmap doInBackground(URLConnection...connection) {
this.connection = connection[0];
return getImageFromServer(connection[0]);
}
protected void onPostExecute(Bitmap result) {
pic.setImageBitmap(result);
this.doInBackground(connection);
}
}
고마워, 그게 많이 도움이 됐어! – user1271544
한 가지 더 ... 어떻게'c.close();가 'URLConnection'을 닫을 수 있습니까? 나는 지금까지 뭔가를 발견했다. – user1271544
아아아, 그렇다면'InputStream'에'.close()'가 있어야합니다. 항상 열려있는 것들을 닫아야합니다. 그래서 내가 가까운 쪽을 추가했습니다. :) – zapl