現在、Android アプリを開発しています。AsyncTask または Thread を使用すると、予期しない例外ポップアップが常に発生します。それらの違いと使用方法を教えてください。
5 に答える
"there is always unexpected exception popup when I use AsyncTask or Thread."
それはそれらの使い方とその中のあなたのコードに依存します。ほとんどの場合、この(他の)スレッドまたは非同期タスクでメインUIスレッドを不適切に使用している場合。
AsyncTaskとThreadの違いについては、SOとnetで検索する必要があります。あなたはそれを簡単に見つけることができます。
とにかく、このブログを読むことをお勧めしますAndroidスレッドコンストラクト(パート4):比較
そして、このSOの質問は、サービス、非同期タスク、スレッドの違いですか?
AsyncTask と Thread には大きな違いがあります。
スレッドは、任意のスレッド、メイン/UI、またはバックグラウンドからトリガーできます。ただし、AsyncTask はメイン スレッドからトリガーする必要があります。
また、android の下位 API (不明、API レベル < 11 である可能性があります) では、AsyncTask の 1 つのインスタンスを 1 回しか実行できません。
あなたは本当にこれを正しく読む必要があります。
http://developer.android.com/guide/topics/fundamentals/processes-and-threads.html
ほとんどの場合、AsyncTask を使用します。これは、特に最初と最後に GUI と対話し、制御された方法で進行状況を報告できるようにするドレスアップ スレッドです。本当に Thread を使用したい場合は、代わりにIntentServiceを使用してください。