В настоящее время у меня есть несколько действий, которые необходимо выполнить asynctask для http post, и я хочу сделать asynctask в качестве другого файла класса, чтобы различная активность могла вызвать асинтез для выполнения запроса HTTP post и onPostExecute, вызвать метод httpResult (результат) в активности, называемой асинхронной. Я попытался передать активность, но я не могу вызвать метод в onPostExecute. Как я могу это сделать?
public class MyActivity extends Activity {
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_MyActivity);
    //logic here...
    AsyncHttpPost asyncHttpPost = new AsyncHttpPost("someContent", this, dialog);
    JSONObject data = new JSONObject();
    data.put("key", "value");
    try {
            asyncHttpPost.execute(data);
        }
        catch (Exception ex){
        ex.printStackTrace();
        }
    }
    public static void httpResult(String result) {
        //this method has to get called by asynctask to make changes to the UI
     }
}
AsyncHttpPost.java
public class AsyncHttpPost extends AsyncTask<JSONObject, String, String> {
String recvdjson;
String mData="";
private ProgressDialog dialog;
private Activity activity;
public AsyncHttpPost(String data, Activity activity, ProgressDialog dialog) {
    mData = data;
    this.activity = activity;
    this.dialog = dialog;
}
protected void onPreExecute()
{
    dialog.show();
}
    @Override
    protected String doInBackground(JSONObject... params) {
       //logic to do http request
           return "someStringResult";
    }
    protected void onPostExecute(String result) {
        dialog.dismiss();
        activity.httpResult(result); //This line gives me error : The method httpResult(String) is undefined for the type Activity
    }
}
