Monthly Archives: August 2010

Android の AsyncTask

Android の Java では、普通に Thread を使って動かすと「突然止まりました」エラーで動かなくなる。Thread 中から UI を呼び出してはいけないルールになっているらしい。で、Thread を検索語にして探索すると、迷路に入る(入った)ので注意。スレッド管理は、AsyncTask<Params, Progress, Result> を使用すると楽ができるように設計されている。 AsyncTask | Android Developers まずは Main にタスクを定義する。 private class NewTask extends AsyncTask<String, Void, Void> 3つの Generic は、それぞれ、実行開始時(doInBackGround)、実行している途中(onProgressUpdate)、実行後の処理(onPostExecute)に渡される引数を定義する。 実行は4つのステップに分かれる。 onPreExecute(), doInBackground(Params…), onProgressUpdate(Progress…), onPostExecute(Result) で、このうち、doInBackGround で UI にアクセスすることが禁止される。 doInBackGround … Continue reading

Posted in ソフトウェア, 作業メモ | Leave a comment