теперь это мой код для фотографирования с моего смартфона, проблема в том, что изображение очень большое, и я хотел бы сжать его, некоторая помощь или идея?
спасибо за информацию
Выполнение метода abrirCamara ()
private fun abrirCamara() {
val values = ContentValues()
values.put(MediaStore.Images.Media.TITLE, "Nueva foto")
values.put(MediaStore.Images.Media.DESCRIPTION, "Desde la camara")
image_uri = contentResolver.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values)
//intención de la cámara
val cameraIntent = Intent(MediaStore.ACTION_IMAGE_CAPTURE)
cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, image_uri)
startActivityForResult(cameraIntent, IMAGE_CAPTURE_CODE)
}
вызывается, когда пользователь нажимает PERMIT или DENY из всплывающего окна запроса на разрешение
override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<out String>, grantResults: IntArray) {
when(requestCode){
PERMISSION_CODE -> {
if (grantResults.size > 0 && grantResults[0] ==
PackageManager.PERMISSION_GRANTED){
//permiso de popup fue concedido
abrirCamara()
}
else{
//el permiso de popup fue denegado
Toast.makeText(this, "Permiso denegado", Toast.LENGTH_SHORT).show()
}
}
}
}
Вызывать, когда изображениебыл захвачен с намерением камеры
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
//Llamada cuando la imagen fue capturada desde la intención de la cámara
if (resultCode == Activity.RESULT_OK){
//configurar imagen capturada a vista de imagen (ImageView)
imgEnvio.setImageURI(image_uri)
captura_btn.visibility =View.INVISIBLE
siguiente.visibility=View.VISIBLE
}
}