En Android, ¿es realmente necesario anular todos los métodos del ciclo de vida?

Ah Buena pregunta.

La respuesta corta es depende.

Es una muy buena práctica anular los métodos de ciclo de vida que cree que le darían a su usuario una mejor experiencia y mejorarían su aplicación.

Por ejemplo, supongamos que está creando una aplicación estática (una aplicación que carga datos de recursos de cadena, por ejemplo), está bien trabajar solo con onCreate, ya que nada se ve realmente afectado cuando el usuario abandona la aplicación o la actividad actual se destruye o el usuario gira su pantalla, pero dice que tiene un proceso muy costoso para la memoria, como la transmisión de música, desea asegurarse de que limpia todas las conexiones de red abiertas y los oyentes cuando su usuario puede salir de la aplicación (en pausa) e iniciar la conexión cuando el usuario vuelve a entrar (onCreate, onStart, onResume).

Entonces, ves que depende del tipo de aplicación que estés creando. Siempre trate de aprovechar los métodos del ciclo de vida para brindar la mejor experiencia.

Solo anule los eventos del ciclo de vida en los que tiene algo que hacer.

No, no es necesario. La documentación de Android es bastante explícita al respecto. Lo mismo es cierto del ciclo de vida del Fragmento. Pero a menudo lo hago de todos modos solo para tener un lugar útil para colocar declaraciones de registro o puntos de interrupción.