diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java index 664b359a27b..fe1d2bf24f8 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java @@ -156,7 +156,7 @@ public class DialogModule extends NativeDialogManagerAndroidSpec implements Life @Override public void initialize() { - getReactApplicationContext().addLifecycleEventListener(this); + getReactApplicationContext().addLifecycleEventListenerAndCheckState(this); } @Override @@ -240,4 +240,14 @@ public class DialogModule extends NativeDialogManagerAndroidSpec implements Life } return new FragmentManagerHelper(((FragmentActivity) activity).getSupportFragmentManager()); } + + @Override + public void onCatalystInstanceDestroy() { + super.onCatalystInstanceDestroy(); + + ReactApplicationContext applicationContext = getReactApplicationContextIfActiveOrWarn(); + if (applicationContext != null) { + applicationContext.removeLifecycleEventListener(this); + } + } }