Justin Xu
05/10/2023, 7:06 AMmoko-media
and moko-permissions
in Compose Multiplatform to open the gallery and select a photo. However, I'm getting a dev.icerock.moko.permissions.DeniedAlwaysException
error when I call the following code:
val mediaFactory = rememberMediaPickerControllerFactory()
val picker = remember(mediaFactory) {
mediaFactory.createMediaPickerController()
}
val coroutineScope = rememberCoroutineScope()
BindMediaPickerEffect(picker)
...
coroutineScope.launch {
picker.permissionsController.providePermission(Permission.GALLERY)
if (picker.permissionsController.isPermissionGranted(Permission.GALLERY)) {
setProfilePictureBitmap(picker.pickImage(MediaSource.GALLERY))
}
...
}
I check my app details on the emulator and it says that Photos and Videos are allowed, not sure what the cause of the issue is. Full error details in repliesJustin Xu
05/10/2023, 7:09 AMdev.icerock.moko.permissions.DeniedAlwaysException
at dev.icerock.moko.permissions.ResolverFragment.requestPermissionLauncher$lambda$1(ResolverFragment.kt:47)
at dev.icerock.moko.permissions.ResolverFragment.$r8$lambda$xVWh1OMY-jV8sGm90Z_Lnoc0rAA(Unknown Source:0)
at dev.icerock.moko.permissions.ResolverFragment$$ExternalSyntheticLambda0.onActivityResult(Unknown Source:4)
at androidx.activity.result.ActivityResultRegistry.doDispatch(ActivityResultRegistry.java:418)
at androidx.activity.result.ActivityResultRegistry.dispatchResult(ActivityResultRegistry.java:375)
at androidx.activity.ComponentActivity.onRequestPermissionsResult(ComponentActivity.java:844)
at androidx.fragment.app.FragmentActivity.onRequestPermissionsResult(FragmentActivity.java:490)
at android.app.Activity.dispatchRequestPermissionsResult(Activity.java:8774)
at android.app.Activity.dispatchActivityResult(Activity.java:8632)
at android.app.ActivityThread.deliverResults(ActivityThread.java:5316)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:5362)
at android.app.servertransaction.ActivityResultItem.execute(ActivityResultItem.java:67)
at android.app.servertransaction.ActivityTransactionItem.execute(ActivityTransactionItem.java:45)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2307)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at android.app.ActivityThread.main(ActivityThread.java:7872)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936)
Suppressed: kotlinx.coroutines.DiagnosticCoroutineContextException: [androidx.compose.ui.platform.MotionDurationScaleImpl@c23aafc, androidx.compose.runtime.BroadcastFrameClock@430c585, StandaloneCoroutine{Cancelling}@ed0cfda, AndroidUiDispatcher@ad91c0b]
ephemient
05/10/2023, 7:42 AMJustin Xu
05/10/2023, 10:00 AMalex009
05/12/2023, 5:47 AMJustin Xu
05/12/2023, 11:20 PMalex009
05/16/2023, 8:20 AMJustin Xu
05/16/2023, 7:36 PM