Soluciona errores de Cloud Storage en Flutter

A veces, el desarrollo de una app no va según lo planeado y se producen errores.

Cuando tengas dudas, registra la excepción que arroja la función y revisa el mensaje de error.

final storageRef = FirebaseStorage.instance.ref().child("files/uid");
try {
  final listResult = await storageRef.listAll();
} on FirebaseException catch (e) {
  // Caught an exception from Firebase.
  print("Failed with error '${e.code}': ${e.message}");
}

Soluciona mensajes de error

Existen varios motivos por los cuales pueden ocurrir errores, como que el archivo no exista, que el usuario no tenga permiso para acceder o que se haya cancelado la carga del archivo.

Para que puedas diagnosticar el problema y solucionar el error de forma correcta, aquí te proporcionamos una lista completa de los errores que surgirán en nuestro cliente y de los motivos por los que ocurren.

Código Descripción
storage/unknown Se produjo un error desconocido.
storage/object-not-found No existe ningún objeto en la referencia deseada.
storage/bucket-not-found No se configuró ningún bucket para Cloud Storage.
storage/project-not-found No se configuró ningún proyecto para Cloud Storage.
storage/quota-exceeded Se superó la cuota del bucket de Cloud Storage. Si tienes el plan de precios Spark, considera actualizar al plan de precios Blaze de pago por uso. Si ya tienes el plan de precios Blaze, comunícate con el equipo de Asistencia de Firebase.

Importante: A partir del 1 de octubre de 2025, el plan de precios Blaze será obligatorio para usar Cloud Storage, incluso los buckets predeterminados.
storage/unauthenticated El usuario no se autenticó. Vuelve a intentarlo después de realizar la autenticación.
storage/unauthorized El usuario no está autorizado para realizar la acción deseada. Consulta las reglas de seguridad para asegurarte de que sean correctas.
storage/retry-limit-exceeded Se superó el límite de tiempo máximo permitido para una operación (de carga, descarga, eliminación, etc.). Vuelve a subirlo.
storage/invalid-checksum El archivo del cliente no coincide con la suma de verificación del archivo que recibió el servidor. Vuelve a subirlo.
storage/canceled El usuario canceló la operación.
storage/invalid-event-name Se proporcionó un nombre de evento no válido. Debe ser uno de los siguientes: [running, progress, pause].
storage/invalid-url Se proporcionó una URL no válida a refFromURL(). Debe tener el formato gs://bucket/object o https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN>.
storage/invalid-argument El argumento que se pase a put() debe ser un objeto File, Blob o un array UInt8. El argumento que se pase a putString() debe ser una string sin procesar, Base64 o Base64URL.
storage/no-default-bucket No se estableció ningún bucket en la propiedad storageBucket de tu configuración.
storage/cannot-slice-blob Ocurre generalmente cuando hubo un cambio en el archivo local (se borró, se volvió a guardar, etc.) Vuelve a subirlo después de verificar que el archivo no haya cambiado.
storage/server-file-wrong-size El archivo del cliente no coincide con el tamaño del archivo que recibió el servidor. Vuelve a subirlo.