2013-12-17 5 views
29

Android AsyncTaskでsuper.onPostExecute(result)またはsuper.onPreExecuteを呼び出す意味があるのだろうか? 私はいつもそれらを呼び出していますが、AsyncTask(Android API Reference: AsyncTask)に関するAndroidのドキュメントでさえそれらは省略されています。 私はそれらを呼んでもいなくても意味がありますか?Android AsyncTaskでsuper.onPostExecute(result)を呼び出す必要がありますか?

+0

いいえあなたはスーパーへの呼び出しを省略することができます – Blackbelt

+0

必要はありませんが、それは良いです – Raghunandan

答えて

46

いいえ、スーパークラスを呼び出す必要はありません。あなたはAsyncTaskソースを見てみた場合、あなたはスーパークラスが何もしないことがわかります。

@SuppressWarnings({"UnusedDeclaration"}) 
protected void onPostExecute(Result result) { 
} 
+0

ありがとうございました! – Andranik

+0

しかし、どうすれば結果を返すことができるので、他のアクティビティで( '.execute()。get();')を得ることができますか? –

3

それはあなたがそれらを呼び出すか、いない場合は、両方のbecaseはAsyncTaskに空の実装を持っており、彼らは唯一の存在は効果がありませんそれらを無効にすることができますが、強制することはありません。