Detectar si la aplicación vuelve a MainActivity desde otra actividad

Creo que usar SharedPreferences sería una buena solución. Puede establecer un valor en el onBackPressed()método en la actividad en la que no desea activar el código de sincronización y luego verificarlo en el onStart()método de su actividad principal, y restablecer el valor si indica que está regresando de un estado que no No quiero hacer una sincronización. Es posible que encuentre otros estados (tal vez cambios de configuración) que no desee sincronizar al regresar también y usar la misma configuración.

Respuesta 1

La solución más fácil es una variable de actividad. Incluso si no te gusta este tipo de solución. No sé cuál es su arquitectura, pero con viewModel está totalmente limpia. Incluso sin él, es comprensible y fácil de mantener.

Me gusta esto:

private var syncToPerformed: Boolean = true

override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean {
    if (keyCode == KeyEvent.KEYCODE_HOME) {
        syncToPerformed = true
    }
    return super.onKeyDown(keyCode, event)
}

override fun onCreate() {
    if (syncToPerformed) {
        // DO YOUR SYNCHRONISATION
       syncToPerformed = false
    }
}

Tampoco es útil usar onStart con esta solución.

Respuesta: 2

Estoy buscando algunas ideas / recursos sobre cómo abordar la creación de una barra de búsqueda en la parte superior de un complemento de eclipse de vista existente. Quiero algo similar a lo que tiene la vista Lista de tareas en eclipse: http: // ...

Quería instalar Lottie 2.8.0 en Android 3.1.1 pero al compilar la biblioteca, recibí este error. He leído la pregunta de los demás, pero no me ayudó en este tema. ¿Qué debo hacer para resolverlo? Los ...

Actualmente estoy usando un programa llamado KNIME, que se utiliza para analizar datos. Para algunos de mis datos, quiero que cada fila de una columna se promedie con el valor de la fila anterior. El 'fragmento de Java' ...

Estoy creando un sistema de inventario simple en Java. Me gusta pasar datos a un JFrame a otro. solo un dato que puedo pasar. No sé cómo pasar múltiples datos. lo que intenté adjuntar lejos a continuación. esta ...