2011-02-07 5 views
0

私はすべてのasynctasksが拡張される基本抽象クラスを持っています。私は、ネットワークエラーのためにエラー処理を組み込んでいます。ユーザーにダイアログを表示して、リクエストをやり直すことができます(ネットワークエラーだったのですが...)。asynctask(android)を再試行するための最良のJavaプラクティス

私はasynctaskを一度実行すると、もう一度実行することができないので、問題を再試行しています。私はどうすればそれを行うことができますか?リフレクションを使用して同じクラスをインスタンス化して再試行する必要がありますか?

誰もこの問題を以前に処理したことがありますか?ここ

+0

おそらく、現在のエラー処理用のコードを投稿することができますか? –

答えて

1

はあなたが必要な答えのようだ:

How to run a retry when download fails in AsyncTask

+0

これらのタスクにIntentServiceまたはServiceを使用したくないので、私は本当に助けになりません。私は、結果を得るための束縛や、ResultReceiver + IntentServiceの使用を避けたい。私は、同じasynctaskを再インスタンス化してexecute()を呼び出すのは苦労しています。 – dnkoutso

1

AsyncTasksは一回の使用であり、一度だけ実行することができます。 2回目の実行が試行されると、例外がスローされます。解決策は、新しいAsyncTaskを作成して実行することです。

+0

はい、私はそれを知っていますが、あなたはどのように行って、すべてのasynctasksに対して自動的に再作成しますか?私はこのロジックを隠しておき、それがどんなタイプのタスクであってもユーザーが「再試行」をクリックすると自動的に私に起こります。 – dnkoutso

関連する問題