に問題がありAsyncTask
ます。doInBackground()
の後にメソッドが呼び出されないことがありonPreExecute()
ます。
この質問が何度か聞かれたことは知っていますが、与えられた答えは私にはうまくいきません。
ここに私のコードの一部があります:
AsyncTask<Void, Void, Void> asyncTask = new AsyncTask<Void, Void, Void>(){
@Override
protected void onPreExecute() {
super.onPreExecute();
Log.e("AsyncTask", "onPreExecute");
}
@Override
protected Void doInBackground(Void... params) {
Log.e("AsyncTask", "doInBackground");
return null;
}
protected void onPostExecute(Void result) {
Log.e("AsyncTask", "onPostExecute");
};
};
if(Build.VERSION.SDK_INT >= 11)
asyncTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
else
asyncTask.execute();
ご覧のとおり、Android のバージョンが >= HoneyComb であるかどうかを確認し、true の場合は Pool Executor でタスクを実行します。その「トリック」でもdoInBackground()
呼ばれないことがあります。
誰かが同じ問題を抱えているか、何が問題なのか知っていますか?
ありがとうございました