Skip to content

Commit 79cac05

Browse files
authored
fix: Fix a case where no camera devices are loaded on app start (mrousavy#3575)
1 parent f27d0d5 commit 79cac05

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

android/src/main/java/com/mrousavy/camera/react/CameraDevicesManager.kt

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,9 +59,8 @@ class CameraDevicesManager(private val reactContext: ReactApplicationContext) :
5959

6060
override fun getName(): String = TAG
6161

62-
override fun initialize() {
63-
super.initialize()
64-
cameraManager.registerAvailabilityCallback(callback, null)
62+
// Init cameraProvider + manager as early as possible
63+
init {
6564
coroutineScope.launch {
6665
try {
6766
Log.i(TAG, "Initializing ProcessCameraProvider...")
@@ -76,6 +75,12 @@ class CameraDevicesManager(private val reactContext: ReactApplicationContext) :
7675
}
7776
}
7877

78+
// Note: initialize() will be called after getConstants on new arch!
79+
override fun initialize() {
80+
super.initialize()
81+
cameraManager.registerAvailabilityCallback(callback, null)
82+
}
83+
7984
override fun invalidate() {
8085
cameraManager.unregisterAvailabilityCallback(callback)
8186
super.invalidate()

0 commit comments

Comments
 (0)