Android: Die doInBackground-Methode von Asynctask wird nach einer langen Verzögerung aufgerufen

8

Ich habe versucht, Videos von einer URL herunterzuladen, ich habe meine Download-Methode in der doInBackground () von asynctask implementiert, aber die DoInBackground-Methode nimmt eine Menge Zeit, um (5-10 Minuten) angerufen zu werden, bin ich Verwenden einer anderen asyntask, um ein Bild in der Aktivität herunterzuladen, von der ich angewiesen wurde, die Videoaktivität herunterzuladen, und es funktioniert gut. Meine onPreExecute Methode wird pünktlich aufgerufen, aber danach braucht doInBackground fast 5-7 Minuten um zu starten. Ich werde wirklich für jede Hilfe dankbar sein. Hier ist mein Code

%Vor%     
Y0gesh Gupta 13.01.2013, 22:47
quelle

3 Antworten

12

Stellen Sie sicher, dass keine anderen asyncTasks ausgeführt werden, indem Sie sie bei Bedarf löschen.

Bei den meisten Android-Versionen läuft asyncTask auf einem einzelnen Hintergrundthread und sollte nur kleine Aufgaben ausführen.

Falls die Aufgabe zu lange dauert (oder mehrere Aufgaben haben), ziehen Sie in Betracht, sie abzubrechen, oder verwenden Sie einen alternativen Ansatz (z. B. mit executeOnExecutor wie beschrieben auf der API ).

    
android developer 14.01.2013, 00:23
quelle
0

Ich stehe vor dem gleichen Problem, obwohl es nicht jedes Mal passiert ist.

Sie könnten den traditionellen Thread für eine Alternative verwenden und die Benutzeroberfläche selbst bearbeiten

    
LoveBigPizza 31.01.2013 02:53
quelle
0

Späte Antwort hilft aber sicher

Wenn Sie min API-Level & gt; = 11 verwenden, versuchen Sie dies

%Vor%     
Ranjith Kumar 15.03.2018 09:14
quelle

Tags und Links