2016年1月14日木曜日

Android : AsyncTaskクラスについて

授業でAndroidのWeb連携をやっている時に、AsyncTaskクラスを使っているが、実は自分でも理解できてないところが多い。ちょっとまとめておく。

1.クラス定義(AsyncTaskサブクラスとして利用)
public class AsyncTaskGetJson extends AsyncTask {

この部分は実行時引数(Param)、進捗単位(Progress)、処理結果(Result)で扱う型を指定する必要があります。 
この場合は、実行時引数(なし)、進捗単位(なし)、処理結果(String)ということです。

2.実行時
MainActivityで
AsyncTaskGetJson taskGetJson = new AsyncTaskGetJson(this);
taskGetJson.execute();
とすると
(i) onPreExecute(): 例:進捗ダイアログの表示
(ii)doInBackground(Params...): 例:実際の処理
(iii) onProgressUpdate(Progress...): 進捗ダイアログの更新
(iv) onPostExecute(Result): データ表示、進捗ダイアログの非表示
の順で呼び出され、それぞれ引数が使われる。

参考
http://d.hatena.ne.jp/unagi_brandnew/20110628/1309193946
http://wikiwiki.jp/android/?AsyncTask%A4%C7%A5%D0%A5%C3%A5%AF%A5%B0%A5%E9%A5%A6%A5%F3%A5%C9%BD%E8%CD%FD%A4%F2%B9%D4%A4%A6

0 件のコメント:

コメントを投稿