タグ

ブックマーク / mio-koduki.blogspot.com (2)

  • [Android] なぜJava標準Threadクラスを基本的にAndroidで使用しないほうがいいのか? Loader、AsyncTaskLoader徹底解剖 番外編 Part1

    おそらくそもそもLoader、AsyncTaskLoaderとは?から来た人が多いと思うので説明は不要でしょうが、 この記事はLoader、AsyncTaskLoaderについての記事の番外編です。 なぜJava標準Threadクラスを基的にAndroidで使用しないほうがいいのか? さて、Androidで非同期処理をする方法の1つに Java標準のThreadクラスを使用する というものがありますが、なぜ使用しないほうがいいのでしょう? この方法には以下の欠点があります。 AndroidにはViewを操作したい場合はUIスレッドからしか行えないという制限がある Threadクラスにはデフォルトで安全にキャンセルする方法がない Threadクラスにはデフォルトでプールがない 詳しく説明していきましょう。 AndroidにはViewを操作したい場合はUIスレッドからしか行えないという制限が

    kimutansk
    kimutansk 2014/10/29
    1の問題は誰もがはじめははまる問題で、2があるから基本使わない方がいい、というのも変わっていませんか。
  • [Android] 非同期処理はAsyncTaskで十分じゃないの? Loader、AsyncTaskLoader徹底解剖 番外編 Part2

    おそらくそもそもLoader、AsyncTaskLoaderとは?から来た人が多いと思うので説明は不要でしょうが、 この記事はLoader、AsyncTaskLoaderについての記事の番外編です。 非同期処理はAsyncTaskで十分じゃないの? さて、Androidで非同期処理をする方法の1つに Androidが用意しているAsyncTaskを使用する というものがあります。 すでに非同期処理の仕組みを用意してるのに なぜわざわざLoader、AsyncTaskLoaderを後から用意したのでしょう? いくつか理由があるようですが、私が思う1番の理由は ActivityやFragmentのライフサイクルに対応していない ということだと思います。 他にもAsyncTaskのonPostExecuteメソッドでUIやDialogをいじることが多く、 ActivityやFragmentの構成

    kimutansk
    kimutansk 2014/10/29
    このあたりのライフサイクルを手動で同期させる必要があるという事情は今も変わっていませんでしたか。
  • 1