Rufen Sie AsyncTask aus einer anderen Klasse auf
In einer vorhandenen App habe ich eine Aktivität mit einer inneren Klasse, die AsyncTask erweitert. Dies sieht folgendermaßen aus:
public class Activity_1 extends BaseActivity {
....
new async().execute();
...
public class asyncextends AsyncTask<Void, Void, String> {
protected String doInBackground(Void... progress) { ... }
protected void onPreExecute() { ... }
protected void onPostExecute(String result) { ... }
}
}
Jetzt muss ich dieselbe doInBackground-Methode aus einer anderen Aktivität aufrufen, aber dieonPostExecute()
dieser inneren Klasse arbeitet mit einigen lokalen UI-Variablen und kann daher nicht von außerhalb der Klasse verwendet werden. Kann ich diese AsyncTask auf irgendeine Weise aufrufen und die überschreiben?onPostExecute
undonPreExecute
-Methode, oder soll ich in der anderen Aktivität noch eine weitere innere Klasse erstellen, das Gleiche im Hintergrund tun (natürlich in die allgemeine Utility-Klasse verschieben oder so), etc ...?