Ich habe eine AsyncTask, die eine Methode einer anderen Klasse aufruft (wo sich die gesamte Berechnungslogik befindet), die einige Hintergrundoperationen ausführt. Ich möchte den Status/Fortschritt der Operation anzeigen. Ich weiß, dass wir publishProgress()
in doInBackground()
aufrufen können, um den Fortschritt im UI-Thread zu veröffentlichen. Aber da die Logik in einer anderen Klasse liegt, muss ich die Instanz einer AsyncTask übergeben, um von dort aus publishProgress()
aufzurufen.Ist es gut, eine AsyncTask-Instanz an eine Methode in einer anderen Klasse zu übergeben, um den Fortschritt zu veröffentlichen?
Ist es ein richtiger Weg? Wird es verursachen Laufzeitproblem oder Speicherleck?
Wenn jemand dies durchgemacht hat, bitte leiten Sie mich an, dies in einer angemessenen Weise zu erreichen.
Edit1: Im AsyncTask Ich rufe einen SOAP Webservice
Verwenden Sie _interface_ – Piyush
@PiyushGupta: Wird es Speicherleck verursachen? Berücksichtigung eines Szenarios, wenn die Orientierung geändert wird. –
@Rithe: Ich benutze das bereits. Es ist eine Rückrufmethode. Aber wir müssen 'publishProgress (someValue)' in 'doInBackground()' aufrufen, um es auszulösen. –