Je veux attendre jusqu'à ce que mon AsynTask
soit terminé avant de continuer. L'état indique toujours RUNNING cependant. Comment le signal AsyncTask
peut-il être terminé? Pourquoi ma boucle while est-elle sans fin? Je pensais qu'une fois que onPostExecute()
est appelée sur la tâche le statut est changé en FINISHED.Comment obtenir AsyncTask Terminé Statut De Non Activité Classe
private void methodOne(Context context) {
MyNewTask getMyTask = null;
try {
getMyTask = new MyNewTask(context, null, null, param1);
getMyTask.execute(getUrl());
while(getResourceTask.getStatus().equals(AsyncTask.Status.RUNNING)){
Log.i("log", "STATUS : " + getMyTask.getStatus());
}
} catch (Exception e) {
e.printStackTrace();
}
}
Merci Tomasz, mon AsyncTask fait partie de sa propre classe ... ce n'est pas une sous-classe. comment puis-je l'obtenir de signaler qu'il a fini à la classe appelante? – user1518485
Cela n'a rien à voir avec les cours. Cela a à voir avec les discussions. Si la boucle while est exécutée sur le thread principal (pas dans un autre 'AsyncTask' ou' Thread') elle bloquera ce thread principal. 'OnPostExecute' est toujours appelé dans ce thread principal, donc il sera également bloqué. J'ai déjà posté comment vous devriez aborder cette question –