안녕하세요 알통몬입니다. 공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!! 포스팅 내용이 찾아주신 분들께 도움이 되길 바라며 더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^
|
올리기 전 선행으로 필요한 AsyncTask 클래스에 대해 공부하겠습니다.
저도 자세하게는 모르지만 제가 JSP , MYSQL, 안드로이드 간의 통신을 하면서 사용한 부분들을
집중적으로 포스팅하겠습니다.
AsyncTask 클래스에 대해서는
https://developer.android.com/reference/android/os/AsyncTask.html
여기서 원문으로 만나볼 수 있습니다 ㅎㅎ
AsyncTask는 자바의 Thread 클래스와 같은 개념입니다
첫 번째 매개값은 AsyncTask의 첫 번째 메서드인 doInBackground메서드의 매개값의 타입이구요.
세 번째 매개값은 doInBackground 메서드의 리턴값과 onPostExecute메서드의 매개값입니다.
그리고 두번 째 매개값은 AsyncTask의 또 다른 메서드인 onProgressUpdate메서드의 매개값의 타입입니다.
그리고 AsyncTask를 실행하는 방법은 Thread 클래스는 start() 메서드로 실행하는 것처럼
AysncTask는 execute() 메서드로 실행합니다.
그리고 위 코드처럼 리턴값이 있다면 리턴값을 받아서 사용할 수도 있겠죠?
리턴값은 execute()메서드 뒤에 .get()메서드를 추가하시면 됩니다!~~
참고로 execute() 메서드 안에도 매개값이 들어가는데요.
위 코드에서 sId[0]이라는 doInBackground의 매개변수가 사용되었죠?
저기에 들어갈 값이 execute(이곳에 값이) 처럼 사용해 주면 됩니다.
값이 여러개 필요할 경우는???
당황하실 필요없이 배열로 sId[1], sId[2] .....sId[n]을 doInBackground메서드 안에 선언하시고,
execute()의 매개값으로 필요한 값들을 넣어주시면 됩니다 ㅎㅎㅎ
UserDataTask userDataTask = new UserDataTask();
String userData = userDataTask.execute(id).get();
이런식으로 사용하시면 됩니다 ㅎㅎ
'안드로이드' 카테고리의 다른 글
안드로이드 스크롤뷰 ScrollView 스크롤 없애기 (0) | 2017.03.11 |
---|---|
안드로이드 EditText Auto focus 자동 포커싱 방지, 자동 포커스 없애기 (0) | 2017.03.11 |
안드로이드 외부 폰트 적용하기 Typeface.createFromAsset() 메서드 상속! (0) | 2017.03.10 |
안드로이드 문자 일치 여부 체크 (ex. 비밀번호와 비밀번호 재입력의 값이 같은지 검사) (0) | 2017.03.10 |
안드로이드 액티비티 이동 시 값 전달 (Intent) putExtra(), getExtras() (0) | 2017.03.10 |