diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/AppStateModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/AppStateModule.java index f4bc26fbafedbf..d979ae5755492a 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/AppStateModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/AppStateModule.java @@ -14,9 +14,13 @@ import com.facebook.react.bridge.ReactContextBaseJavaModule; import com.facebook.react.bridge.ReactMethod; import com.facebook.react.bridge.WritableMap; +import com.facebook.react.common.LifecycleState; import com.facebook.react.module.annotations.ReactModule; import com.facebook.react.modules.core.DeviceEventManagerModule.RCTDeviceEventEmitter; +import java.util.HashMap; +import java.util.Map; + @ReactModule(name = AppStateModule.NAME) public class AppStateModule extends ReactContextBaseJavaModule implements LifecycleEventListener { @@ -26,10 +30,15 @@ public class AppStateModule extends ReactContextBaseJavaModule public static final String APP_STATE_ACTIVE = "active"; public static final String APP_STATE_BACKGROUND = "background"; - private String mAppState = "uninitialized"; + private static final String INITIAL_STATE = "initialAppState"; + + private String mAppState; public AppStateModule(ReactApplicationContext reactContext) { super(reactContext); + reactContext.addLifecycleEventListener(this); + mAppState = (reactContext.getLifecycleState() == LifecycleState.RESUMED ? + APP_STATE_ACTIVE : APP_STATE_BACKGROUND); } @Override @@ -38,8 +47,10 @@ public String getName() { } @Override - public void initialize() { - getReactApplicationContext().addLifecycleEventListener(this); + public Map getConstants() { + HashMap constants = new HashMap<>(); + constants.put(INITIAL_STATE, mAppState); + return constants; } @ReactMethod