/ / android asynctask da como resultado otra actividad: android, android-activity, android-asynctask

Android asynctask da como resultado otra actividad: android, android-activity, android-asynctask

Yo tengo un Actividad A y una AsyncTask, que hace algunos cálculosy almacena datos en la base de datos. Estas operaciones toman alrededor de 3-5 segundos. Se llama a AsyncTask después de presionar un botón "Guardar" y se inicia la nueva Actividad B (esta Actividad B no es importante). También hay Actividad C, que carga datos, que almacené de la Actividad Ay AsyncTask. Y aquí está mi problema: si comienzo la Actividad C y AsyncTask todavía no terminó de almacenar datos, quiero mostrar la animación de carga hasta que AsyncTask termine y los datos se puedan cargar en la actividad.

Tengo una visión que AsyncTask en métodoonPostExecute cambiará la variable global "booleano terminado = verdadero" y después de iniciar la Actividad C, comprobaré periódicamente si la variable es verdadera. Pero creo que no es el camino correcto. Entonces, ¿cuál es la forma correcta? Gracias

Respuestas

0 para la respuesta № 1

Lo que puede hacer en la Actividad C es verificar la base de datos en onResume si su resultado esperado ya está allí ono. Si está allí, simplemente muestre su resultado. Si no está allí, muestre su ícono de carga y registre un receptor de transmisión que escuche un evento específico.

En onPostExecute del AsyncTask puedes transmitir ese evento específico. Cuando la actividad C recibe ese evento, simplemente puede volver a verificar la base de datos donde ahora estará el resultado.