I am having trouble getting the onPostExecute()
method to call when running an AsyncTask
. When I try to set up my class extending AsyncTask
in which the onPostExecute()
is overridden I get the following build error.
'The method onPostExecute() of type AsyncTaskExampleActivity must override or implement a supertype method'
I have tried getting rid of the @Override
annotation. This gets rid of the build error but the method still does not execute. If any one would be so kind as to point out what I'm overlooking I would greatly appreciated it.
Code:
package com.asynctaskexample;
import android.os.AsyncTask;
public class AsyncTaskExampleActivity extends AsyncTask<Void, Void, Void> {
AsyncTaskExampleActivity(){
super();
}
@Override
protected void onPreExecute() {
}
@Override
protected Void doInBackground(Void... params) {
return null;
}
@Override
protected void onPostExecute() {
}
}
OnPostExecute()
takes an argument (the object you return from doInBackground()
). Change it to protected void onPostExecute(Void v)
. If you don't provide the argument, the method signatures do not match and the override annotation starts to complain that there is no function to override with this signature.