hasta ahora cuando accedo a la galería y selecciono, una imagen me funciona correctamente pero si tomo una foto, ahí es donde me aparece este error:
E/AndroidRuntime: FATAL EXCEPTION: android.bg
Process: mposglobal.com.mposglobal, PID: 15242
java.lang.IllegalStateException: uri must not be null
at com.nguyenhoanglam.imagepicker.ui.camera.DefaultCameraModule$getImage$2.onScanCompleted(DefaultCameraModule.kt:96)
at android.media.MediaScannerConnection.runCallBack(MediaScannerConnection.java:277)
at android.media.MediaScannerConnection.lambda$scanFile$2(MediaScannerConnection.java:254)
at android.media.-$$Lambda$MediaScannerConnection$OHvRCUP9iHmcrBgJ56umGlJZPUU.run(Unknown Source:6)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:246)
at android.os.HandlerThread.run(HandlerThread.java:67)
yo creería que el problema se presenta porque uri no recibe nada pero path si tiene el valor correcto y en la linea de revokeAppPermission deberia ir context e imagenUri en vez de contexto y uri o estaré equivocado?.
override fun getImage(context: Context, isRequireId: Boolean, imageReadyListener: OnImageReadyListener?) {
checkNotNull(imageReadyListener) { "OnImageReadyListener must not be null" }
if (imageFilePath == null) {
imageReadyListener.onImageNotReady()
return
}
if (imageFilePath != null) {
MediaScannerConnection.scanFile(context.applicationContext, arrayOf(imageFilePath!!), null) { path, uri ->
if (path != null) {
val id = if (isRequireId && imageUri != null) (getImageIdFromURI(context, imageUri!!) ?: 0) else 0
imageReadyListener.onImageReady(ImageHelper.singleListFromPath(id, path))
} else {
imageReadyListener.onImageNotReady()
}
revokeAppPermission(context, uri)
imageFilePath = null
imageUri = null
}
}
}
Actualmente estoy usando la implementación
implementation('com.github.nguyenhoanglam:ImagePicker:1.4.3') { exclude group: 'com.google.android.material', module: 'material' }
hasta ahora cuando accedo a la galería y selecciono, una imagen me funciona correctamente pero si tomo una foto, ahí es donde me aparece este error:
E/AndroidRuntime: FATAL EXCEPTION: android.bg Process: mposglobal.com.mposglobal, PID: 15242 java.lang.IllegalStateException: uri must not be null at com.nguyenhoanglam.imagepicker.ui.camera.DefaultCameraModule$getImage$2.onScanCompleted(DefaultCameraModule.kt:96) at android.media.MediaScannerConnection.runCallBack(MediaScannerConnection.java:277) at android.media.MediaScannerConnection.lambda$scanFile$2(MediaScannerConnection.java:254) at android.media.-$$Lambda$MediaScannerConnection$OHvRCUP9iHmcrBgJ56umGlJZPUU.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:246) at android.os.HandlerThread.run(HandlerThread.java:67)
yo creería que el problema se presenta porque uri no recibe nada pero path si tiene el valor correcto y en la linea de revokeAppPermission deberia ir context e imagenUri en vez de contexto y uri o estaré equivocado?.
override fun getImage(context: Context, isRequireId: Boolean, imageReadyListener: OnImageReadyListener?) { checkNotNull(imageReadyListener) { "OnImageReadyListener must not be null" } if (imageFilePath == null) { imageReadyListener.onImageNotReady() return } if (imageFilePath != null) { MediaScannerConnection.scanFile(context.applicationContext, arrayOf(imageFilePath!!), null) { path, uri -> if (path != null) { val id = if (isRequireId && imageUri != null) (getImageIdFromURI(context, imageUri!!) ?: 0) else 0 imageReadyListener.onImageReady(ImageHelper.singleListFromPath(id, path)) } else { imageReadyListener.onImageNotReady() } revokeAppPermission(context, uri) imageFilePath = null imageUri = null } } }