この記事は、【 可茂IT塾 Advent Calendar 2024 】の10日目の記事です。
こんにちは。可茂IT塾メンバーのやなっちです。
今回は私が画像保存をFireStorageにしようとした時に詰まったエラーの紹介,対応策についてです
(この対応策がベストなのかは分かりませんが私は紹介する内容で解決しました)
[firebase_storage/object-not-found] No object exists at the desired reference.
object-not-foundなどのメッセージが出てきたのが初めてで何が起きているのやらさっぱりでした😅
いくつか調べたのですが多く記載されていたのは
とりあえず、できることは何でもやろうかなということで対応策に続く。。。
保存しようとしているデータ量が大きいのかもしれないと思ったのでデータサイズを削減しようと思いました
つまり、アップロードの前に圧縮するようにしました
圧縮したらデータが保存されるようになりました😄
実際のコードになります
final compressedFile = await FlutterImageCompress.compressAndGetFile(
imagePath,
'${imagePath}_compressed.jpg',
quality: 70,
);
if (compressedFile != null) {
final newFile = File(compressedFile.path);
UploadTask uploadTask = storage
.ref()
.child('upload')
.child('icon')
.child(snapshot.id)
.putFile(newFile);
final snapshotResult = await uploadTask;
iconUrl = await snapshotResult.ref.getDownloadURL();
}
結局根本的な原因の追及とまではいけませんでした...
しかし、画像圧縮することは保存するしないに関わらず良いことではあるのでエラー関係なしに実装してみても良いのではないでしょうか!
可茂IT塾ではFlutterインターンを募集しています!可茂IT塾のエンジニアの判断で、一定以上のスキルをを習得した方には有給でのインターンも受け入れています。
Read More可茂IT塾ではFlutterインターンを募集しています!可茂IT塾のエンジニアの判断で、一定以上のスキルをを習得した方には有給でのインターンも受け入れています。
Read More