diff --git a/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java b/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java index 35c2b533586..9080f60d265 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +++ b/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java @@ -64,4 +64,10 @@ public class EventEmitterWrapper { NativeMap payload = params == null ? new WritableNativeMap() : (NativeMap) params; invokeUniqueEvent(eventName, payload, customCoalesceKey); } + + public void destroy() { + if (mHybridData != null) { + mHybridData.resetNative(); + } + } } diff --git a/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java b/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java index e61f26a2dd6..b2f5af0968f 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java @@ -251,6 +251,10 @@ public class SurfaceMountingManager { viewState.mStateWrapper.destroyState(); viewState.mStateWrapper = null; } + if (viewState.mEventEmitter != null) { + viewState.mEventEmitter.destroy(); + viewState.mEventEmitter = null; + } } Runnable runnable =