Android 2.3.3 AsyncTask call raises NoSuchFieldError

this works fine on Android 4.0.3, but I get an error in android 2.3.3 any help would be greatly appreciated. a line in bold causes an error.

public class TestLoadingTask extends AsyncTask<Object, Object, Void> {
}

btndownload.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        if (util.isNetworkAvailable(NewTakeTest.this)) {
                TestLoadingTask task;
        task = new TestLoadingTask();
        task.currentposition = position;
        task.testname = productsOnCloudList.getList().get(position).getProductname();
        **task.executeOnExecutor(task.THREAD_POOL_EXECUTOR, null);**
    }
    }
});

I am new to stackoverflow, so if I cannot correctly explain my question, please forgive me.

the entire magazine as follows.

09-01 17:07:10.853 E/AndroidRuntime(21188): FATAL EXCEPTION: main
09-01 17:07:10.853 E/AndroidRuntime(21188): java.lang.NoSuchFieldError: in.informationworks.app.CATapp.store.NewTakeTest$TestLoadingTask.THREAD_POOL_EXECUTOR
09-01 17:07:10.853 E/AndroidRuntime(21188): at in.informationworks.app.CATapp.store.NewTakeTest$CloudCustomAdapter$1.onClick(NewTakeTest.java:973)
09-01 17:07:10.853 E/AndroidRuntime(21188): at android.view.View.performClick(View.java:2533)
09-01 17:07:10.853 E/AndroidRuntime(21188): at android.view.View$PerformClick.run(View.java:9320)
09-01 17:07:10.853 E/AndroidRuntime(21188): at android.os.Handler.handleCallback(Handler.java:587)
09-01 17:07:10.853 E/AndroidRuntime(21188): at android.os.Handler.dispatchMessage(Handler.java:92)
09-01 17:07:10.853 E/AndroidRuntime(21188): at android.os.Looper.loop(Looper.java:150)
09-01 17:07:10.853 E/AndroidRuntime(21188): at android.app.ActivityThread.main(ActivityThread.java:4389)
09-01 17:07:10.853 E/AndroidRuntime(21188): at java.lang.reflect.Method.invokeNative(Native Method)
09-01 17:07:10.853 E/AndroidRuntime(21188): at java.lang.reflect.Method.invoke(Method.java:507)
09-01 17:07:10.853 E/AndroidRuntime(21188): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:849)
09-01 17:07:10.853 E/AndroidRuntime(21188): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:607)
09-01 17:07:10.853 E/AndroidRuntime(21188): at dalvik.system.NativeStart.main(Native Method)
09-01 17:07:10.863 E/EmbeddedLogger(  180): App crashed! Process: in.informationworks.app.CATapp
+5
source share
1 answer

, API 11 , API 10 . executeOnExecutor() THREAD_POOL_EXECUTOR API 11 Android. android.os.Build Android, , execute() .

:

  @TargetApi(11)
  static public <T> void executeAsyncTask(AsyncTask<T, ?, ?> task,
                                          T... params) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
      task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, params);
    }
    else {
      task.execute(params);
    }
  }

, AsyncTask executeAsyncTask(), AsyncTask , doInBackground() :

fooTask=new FooTask();
executeAsyncTask(fooTask, "these", "are", "optional");
+9

All Articles