From f166f2a48d37207e039ba5392de7526da6555357 Mon Sep 17 00:00:00 2001 From: Mihai-Cristian Condrea Date: Tue, 11 Nov 2025 08:29:02 +0200 Subject: [PATCH] Delay navigation until activity is resumed --- .../java/ui/screens/main/MainActivity.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/app/src/main/java/com/d4rk/androidtutorials/java/ui/screens/main/MainActivity.java b/app/src/main/java/com/d4rk/androidtutorials/java/ui/screens/main/MainActivity.java index 4b263f74..bb01a92d 100644 --- a/app/src/main/java/com/d4rk/androidtutorials/java/ui/screens/main/MainActivity.java +++ b/app/src/main/java/com/d4rk/androidtutorials/java/ui/screens/main/MainActivity.java @@ -327,6 +327,16 @@ private void navigateToPreferredDestination(int preferredDestination) { lastPreferredStartDestination = preferredDestination; return; } + if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.RESUMED)) { + getLifecycle().addObserver(new DefaultLifecycleObserver() { + @Override + public void onResume(@NonNull LifecycleOwner owner) { + getLifecycle().removeObserver(this); + navigateToPreferredDestination(preferredDestination); + } + }); + return; + } NavOptions options = new NavOptions.Builder() .setPopUpTo(graph.getStartDestinationId(), true) .setLaunchSingleTop(true)