¿Pueden los controladores de Android pasar más datos?
El controlador básicamente acepta los datos enviados por el hilo secundario y usa estos datos para actualizar la interfaz de usuario junto con el hilo principal.
Explicación: Cuando se inicia la aplicación, Android primero abrirá un hilo principal (también llamado hilo de la interfaz de usuario), que es responsable de administrar los controles de la interfaz de usuario en la interfaz y distribuir eventos, por ejemplo, si es un botón. Cuando se hace clic, Android envía eventos a los botones en respuesta a las acciones. Por ejemplo, si hace clic en un Botón, Android envía eventos al Botón en respuesta a la acción.
Si necesita realizar operaciones que requieren mucho tiempo, como leer datos a través de Internet o leer archivos locales grandes, no puede colocar estas operaciones en el hilo principal. Si coloca estas operaciones en el hilo principal, la interfaz aparecerá suspendida y, si no completa la operación en 5 segundos, recibirá un mensaje de error "forzar cierre" del sistema Android. En este momento, debemos colocar estas operaciones que consumen mucho tiempo en el subproceso, porque el subproceso implica actualizaciones de la interfaz de usuario y el subproceso principal de Android no es seguro para subprocesos, lo que significa que la actualización de la interfaz de usuario solo se puede actualizar en el subproceso. El hilo principal y el hilo secundario son muy peligrosos. En este momento, aparece Handler. Para resolver este problema complejo, debido a que el controlador se ejecuta en el subproceso principal (subproceso de la interfaz de usuario), él y el subproceso pueden transferir datos a través del objeto Mensaje. En este momento, el controlador asume la tarea de aceptar la transferencia del. subproceso (el subproceso utiliza sedMessage() Método para pasar el objeto de mensaje (que contiene datos), colocar el mensaje en la cola del hilo principal y actualizar la interfaz de usuario junto con el hilo principal.