Skip to content

Commit 47e3b7e

Browse files
committed
fix(startup): move CameraX initialization off main thread
Dispatch ProcessCameraProvider.getInstance() to Dispatchers.IO to avoid blocking the main thread during ContentProvider initialization. Signed-off-by: Brandon McAnsh <git@bmcreations.dev>
1 parent 8df5aeb commit 47e3b7e

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

apps/flipcash/app/src/main/kotlin/com/flipcash/app/internal/startup/CameraXInitializer.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,15 @@ package com.flipcash.app.internal.startup
33
import android.content.Context
44
import androidx.camera.lifecycle.ProcessCameraProvider
55
import androidx.startup.Initializer
6+
import kotlinx.coroutines.CoroutineScope
7+
import kotlinx.coroutines.Dispatchers
8+
import kotlinx.coroutines.launch
69

710
class CameraXInitializer: Initializer<Unit> {
811
override fun create(context: Context) {
9-
ProcessCameraProvider.getInstance(context)
12+
CoroutineScope(Dispatchers.IO).launch {
13+
ProcessCameraProvider.getInstance(context)
14+
}
1015
}
1116

1217
override fun dependencies(): List<Class<out Initializer<*>?>?> {

0 commit comments

Comments
 (0)