0

私は AsyncTask (バックグラウンドでいくつかのネットワーク接続チェックを行っています) を持っていますが、これは onPostExecute では何もしないとしましょう。問題は、DDMS Threads ビューを見ると、バックグラウンドでの作業が完了し、アプリを終了したにもかかわらず、AsyncTask がまだ待機していることです。

この振る舞いは正常ではないと思います。誰か教えてもらえますか?

public class CheckConnectionTask extends AsyncTask<String, Integer, Boolean> {
    private Integer forTask = null;

    public CheckConnectionTask(Integer forTask) {
        super();
        this.forTask = forTask;
    }

    @Override
    protected void onPreExecute() {
        super.onPreExecute();
    }

    @Override
    protected Boolean doInBackground(String... params) {
        if (D) Log.d(TAG, "doInBackground");
        Thread.currentThread().setName("CheckConnectionTask for task " + forTask);

        return DataUtils.isInternetConnectionAvailable(CurrentActivity.this);
    }

    @Override
    protected void onPostExecute(Boolean result) {
        if (D) Log.d(TAG, "onPostExecute");
        super.onPostExecute(result);

        //do some UI work here, nothing for the moment

    }

}
4

0 に答える 0