diff --git a/packages/react-native/ReactAndroid/api/ReactAndroid.api b/packages/react-native/ReactAndroid/api/ReactAndroid.api index bf994ef3eee..b3945ca0e88 100644 --- a/packages/react-native/ReactAndroid/api/ReactAndroid.api +++ b/packages/react-native/ReactAndroid/api/ReactAndroid.api @@ -2963,17 +2963,6 @@ public abstract interface class com/facebook/react/modules/debug/interfaces/Deve public abstract fun setStartSamplingProfilerOnInit (Z)V } -public final class com/facebook/react/modules/deviceinfo/DeviceInfoModule : com/facebook/fbreact/specs/NativeDeviceInfoSpec, com/facebook/react/bridge/LifecycleEventListener { - public fun (Landroid/content/Context;)V - public fun (Lcom/facebook/react/bridge/ReactApplicationContext;)V - public final fun emitUpdateDimensionsEvent ()V - public fun getTypedExportedConstants ()Ljava/util/Map; - public fun invalidate ()V - public fun onHostDestroy ()V - public fun onHostPause ()V - public fun onHostResume ()V -} - public class com/facebook/react/modules/dialog/AlertFragment : androidx/fragment/app/DialogFragment, android/content/DialogInterface$OnClickListener { public fun ()V public fun (Lcom/facebook/react/modules/dialog/DialogModule$AlertFragmentListener;Landroid/os/Bundle;)V diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt index c8906be5248..bc262392623 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt @@ -7,7 +7,6 @@ package com.facebook.react.modules.deviceinfo -import android.content.Context import com.facebook.fbreact.specs.NativeDeviceInfoSpec import com.facebook.react.bridge.LifecycleEventListener import com.facebook.react.bridge.ReactApplicationContext @@ -20,22 +19,14 @@ import com.facebook.react.uimanager.DisplayMetricsHolder.initDisplayMetricsIfNot /** Module that exposes Android Constants to JS. */ @ReactModule(name = NativeDeviceInfoSpec.NAME) -public class DeviceInfoModule : NativeDeviceInfoSpec, LifecycleEventListener { - private var reactApplicationContext: ReactApplicationContext? = null - private var fontScale: Float +internal class DeviceInfoModule(reactContext: ReactApplicationContext) : + NativeDeviceInfoSpec(reactContext), LifecycleEventListener { + private var fontScale: Float = reactContext.resources.configuration.fontScale private var previousDisplayMetrics: ReadableMap? = null - public constructor(reactContext: ReactApplicationContext) : super(reactContext) { + init { initDisplayMetricsIfNotInitialized(reactContext) - fontScale = reactContext.resources.configuration.fontScale reactContext.addLifecycleEventListener(this) - reactApplicationContext = reactContext - } - - public constructor(context: Context) : super(null) { - reactApplicationContext = null - initDisplayMetricsIfNotInitialized(context) - fontScale = context.resources.configuration.fontScale } public override fun getTypedExportedConstants(): Map { @@ -58,7 +49,7 @@ public class DeviceInfoModule : NativeDeviceInfoSpec, LifecycleEventListener { override fun onHostDestroy(): Unit = Unit - public fun emitUpdateDimensionsEvent() { + fun emitUpdateDimensionsEvent() { reactApplicationContext?.let { context -> if (context.hasActiveReactInstance()) { // Don't emit an event to JS if the dimensions haven't changed