Agregar .putExtra () a un Intento proporciona el código de retorno: -1

Tengo un onActivityResult que maneja un caso CAMERA_PHOTO_REQUEST y funciona hasta que agregue un argumento ".putExtra" al Intento.

Trabajos:

val cameraPhotoIntent = Intent(MediaStore.ACTION_IMAGE_CAPTURE) startActivityForResult(cameraPhotoIntent, PermissionHandler.REQUEST_TAKE_PHOTO) 

No funciona:

 val cameraPhotoIntent = Intent(MediaStore.ACTION_IMAGE_CAPTURE) cameraPhotoIntent.putExtra(MediaStore.EXTRA_OUTPUT, photoURI) startActivityForResult(cameraPhotoIntent, PermissionHandler.REQUEST_TAKE_PHOTO) 

onActivityResult:

 override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { super.onActivityResult(requestCode, resultCode, data) when (requestCode) { PermissionHandler.REQUEST_TAKE_PHOTO -> if (resultCode == RESULT_OK && data != null) { //result code becomes -1 and data = null after I change to the new semantics val extras = data.extras val imageBitmap = extras.get("data") as Bitmap profile_image.setImageBitmap(imageBitmap) galleryAddPic() } } } 

Mi plan es cambiar la galleryAddPic () con el argumento .putExtra () ya que las API de más de 22 necesitan más. Cuando agrego .putExtra, la image se guarda de hecho en el teléfono, pero como me da un código de resultado -1, no activará el bloque onActivityResult y, por lo tanto, no se establecerá la image de perfil.

EDITAR: onActivityResult capta la intención con el código de request correcto, pero el código de resultado es -1 y los datos son nulos. Es como si el receptor de resultados captura la parte .putExtra que queda atrapada en lugar de la intención real …

Ty por tomarse el time para ayudar a un viernes tarde como este.