Androidアプリ開発逆引き大全 500の極意

プロセスとスレッドの処理 - Tips348 メソッドdoInBackGroundとonProgressUpdateの関係を把握する

登録タグ
Icon comment count 0
Icon stock count 0

5-1バックグラウンド処理とサービスTips348 メソッドdoInBackGroundとonProgressUpdateの関係を把握する

対応Ver:全て

Level2

AnswerメソッドdoInBackGroundがpublishProgressを呼ぶたび、onProgressUpdateが呼ばれる

クラスAsyncTaskのメソッドdoInBackGroundは、可変長の引数をとります。これは、「x1, x2, ....xn」に相当します。

doInBackGroundでは「x1, x2, ....xn」を順番に処理するたび、publishProgressというメソッドを呼びます。引数が、そのつどの処理結果になります。

このとき、onProgressUpdateが呼ばれ、publishProgressを通じて、処理結果が渡されます。

onProgressUpdateの引数も、可変長です。しかし、「x1,...xn」の可変長に対応するわけではありません。

それぞれ複数の処理によって出る複数の結果を受け容れられるという意味での「可変」です。処理が「同じ関数を適用する」のように一通りなら、結局使う引数はひとつになります。その引数が1から100まで替わるということです。

ジェネリック型のAsyncTaskで決めるべき3つの型のうち、2つがここで決まります。まず、メソッドdoInBackGroundがとる

出典情報

Medium

Androidアプリ開発逆引き大全 500の極意

  • 著者: 清水 美樹

コメント

    コメントはありません