diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java
index 9fa81b6d0590ab..63adc75fbbe45b 100644
--- a/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java
+++ b/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java
@@ -42,6 +42,8 @@ public final class WebSocketModule extends NativeWebSocketModuleSpec {
 
   public static final String NAME = "WebSocketModule";
 
+  public static final int STATUS_CODE_NORMAL = 1000;
+
   public interface ContentHandler {
     void onMessage(String text, WritableMap params);
 
@@ -418,4 +420,15 @@ public void addListener(String eventName) {}
 
   @Override
   public void removeListeners(double count) {}
+
+  @Override
+  public void invalidate() {
+    super.invalidate();
+    mOnOpenHandler = null;
+    mContentHandlers.clear();
+    for (WebSocket socket : mWebSocketConnections.values()) {
+      socket.close(STATUS_CODE_NORMAL, null);
+    }
+    mWebSocketConnections.clear();
+  }
 }