Wie übergebe ich Context an AsyncTask?

8

Wie übergibt man den Kontext in Async Task class, der in einer anderen Java-Datei von Main Activity codiert ist, aber von der Hauptaktivität aus aufgerufen wurde?

Unten ist mein Code:

%Vor%     
Darshan Dhoriya 30.05.2016, 18:35
quelle

2 Antworten

26

Sie könnten einfach eine Context -Instanz als Konstruktorparameter übergeben (und einen WeakReference beibehalten, um Speicherlecks zu vermeiden).

Zum Beispiel:

%Vor%

Und das Ausführen:

%Vor%     
earthw0rmjim 30.05.2016 18:50
quelle
1

Sie können den Kontext einfach im Konstruktor Ihrer AsyncTask übergeben.

MyAsyncTask.java

%Vor%

und dann verwenden Sie einfach die mContext-Variable in Ihrer onPostExecute () -Methode.

Wenn Sie Ihre AsyncTask von Ihrer MainActivity aus aufrufen, übergeben Sie den Kontext an den Konstruktor von MyAsyncTask.

MainActivity.java

%Vor%     
Tristan 30.05.2016 18:44
quelle

Tags und Links