Cuando usamos el almacenamiento local en Flutter con sqlite es normal encontrarnos con este error cuando almacenamos datos demasiados grandes, por lo general imágenes.
Hoy te vamos a enseñar dos maneras para solucionar este error.
La primera es usar la librería flutter_image_compress 1.1.0 para comprimir imágenes las cuales posteriormente podrás guardar en tu base de datos con un tamaño mucho más pequeño que el original.
Es muy sencilla de utilizar solamente tienes que añadirla a tus dependencias de flutter con el comando:
$ flutter pub add flutter_image_compress
o añadirla directamente en las dependencias:
dependencies:
flutter_image_compress: ^1.1.0
Realizar un flutter pub get para importar todos los cambios y ya podrás empezar a disfrutar de este increíble package que te permitirá comprimir todo tipo de imágenes.
“En algunas ocasiones tendrás que reiniciar el IDE si estás utilizando Visual Studio Code para que realice bien la importación del paquete.”
Si lo que quieres es utilizarlo solo importa la ruta en el fichero donde lo vayas a utilizar y empieza a utilizar sus métodos.
import 'package:flutter_image_compress/flutter_image_compress.dart';
paquete oficial : https://pub.dev/packages/flutter_image_compress
La segunda opción es usar un paquete que es muy conocido por la comunidad y te permitirá que a la vez que elijas la foto puedas imprimirla directamente sin ningún tipo de problemas.
Lo único que tienes que hacer es indicar la medidas de compresión y el paquete se encargará del resto por ti.
El paquete del que estamos hablando es image_picker y tan solo tienes que indicar el alto o el ancho que deseas y todo está arreglado.
paquete oficial : https://pub.dev/packages/images_picker
Ejemplo:
final ImagePicker _picker = ImagePicker();
final pickedFile = await _picker.pickImage(
source: ImageSource.gallery,
maxHeight: 1920, // only for JPEG ,png , webp
maxWidth: 1080,
);
¿Quieres compartirlo en las redes sociales?
No hay comentarios, anímate y deja el primero.