【Flutter】FireStorageで出てきたNoObjectエラーについて(画像圧縮)

image

この記事は、【 可茂IT塾 Advent Calendar 2024 】の10日目の記事です。

あいさつ

こんにちは。可茂IT塾メンバーのやなっちです。
今回は私が画像保存をFireStorageにしようとした時に詰まったエラーの紹介,対応策についてです (この対応策がベストなのかは分かりませんが私は紹介する内容で解決しました)

エラー内容

[firebase_storage/object-not-found] No object exists at the desired reference. object-not-foundなどのメッセージが出てきたのが初めてで何が起きているのやらさっぱりでした😅

いくつか調べたのですが多く記載されていたのは

  • 画像のpathが間違ってる
  • インターネットのエラー? などなどで具体的な解決手法や原因などには追及されていませんでした...

とりあえず、できることは何でもやろうかなということで対応策に続く。。。

対応策

保存しようとしているデータ量が大きいのかもしれないと思ったのでデータサイズを削減しようと思いました

つまり、アップロードの前に圧縮するようにしました

圧縮したらデータが保存されるようになりました😄

利用したパッケージ

実際のコードになります

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塾ではFlutterインターンを募集しています!

可茂IT塾ではFlutterインターンを募集しています!可茂IT塾のエンジニアの判断で、一定以上のスキルをを習得した方には有給でのインターンも受け入れています。

Read More
U30可茂ITインターンハッカソン

U30可茂ITインターンハッカソン

12月28,29日開催。2日間でアプリ開発の企画から完成までを目指す!U30可茂ITインターンハッカソンを開催します。

Read More

タグ

Flutter (115)初心者向け (28)イベント (18)Google Apps Script (15)Nextjs (12)可茂IT塾 (9)Firebase (7)React (7)riverpod (6)ChatGPT (5)vscode (5)デザイン (5)新卒 (4)就活 (4)Figma (4)Dart (4)JavaScript (4)お知らせ (4)FlutterWeb (3)Prisma (3)NestJS (3)Slack (3)TypeScript (3)ワーケーション (3)インターン (3)設計 (2)線型計画法 (2)事例 (2)Git (2)Image (2)File (2)Material Design (2)経験談 (2)画像 (2)iOS (2)アプリ開発 (2)React Hooks (2)tailwindcss (2)社会人 (2)大学生 (2)RSS (1)Google (1)Web (1)CodeRunner (1)個人開発 (1)Android (1)Unity (1)WebView (1)Twitter (1)フルリモート (1)TextScaler (1)textScaleFactor (1)学生向け (1)supabase (1)Java (1)Spring Boot (1)shell script (1)正規表現 (1)table (1)テーブル (1)hooks (1)react (1)パワーポイント (1)趣味 (1)モンスターボール (1)CSS (1)SCSS (1)Cupertino (1)ListView (1)就活浪人 (1)既卒 (1)保守性 (1)iPad (1)シェアハウス (1)スクレイピング (1)PageView (1)画面遷移 (1)flutter_hooks (1)Gmail (1)GoogleWorkspace (1)ShaderMask (1)google map (1)Google Places API (1)GCPコンソール (1)Google_ML_Kit (1)Vercel (1)Google Domains (1)DeepLeaning (1)深層学習 (1)Google Colab (1)コード生成 (1)GitHub Copilot (1)オンラインオフィス (1)オブジェクト指向 (1)クラスの継承 (1)ポリモーフィズム (1)LINE (1)Bitcoin (1)bitFlyer (1)コミュニティー (1)文系エンジニア (1)Freezed (1)ヒーター (1)作業効率 (1) (1)Flutter実践開発 (1) (1)permission_handler (1)flutter_local_notifications (1)markdown (1)GlobalKey (1)ValueKey (1)Key (1)アイコン (1)go_router (1)FireStorage (1)debug (1)datetime_picker (1)Apple Store Connect (1)FlutterGen (1)デバッグ (1)Widget Inspector (1)VRChat (1)API (1)検索機能 (1)Shader (1)Navigator (1)メール送信 (1)FlutterFlow (1)Firebase App Distribution (1)Fastlane (1)Dio (1)CustomClipper (1)ClipPath (1)カスタム認証 (1)アニメーション (1)Arduino (1)ESP32 (1)フリーランス (1)会社員 (1)mac (1)csv (1)docker (1)GithubActions (1)Dialog (1)BI (1)LifeHack (1)ショートカット (1)Chrome (1)高校生 (1)キャリア教育 (1)非同期処理 (1)生体認証 (1)BackdropFilter (1)レビュー (1)getAuth (1)クローズドテスト (1)PlayConsole (1)Algolia (1)コンサルティング (1)Symbol (1)

お知らせ

可茂IT塾ではFlutterインターンを募集しています!

可茂IT塾ではFlutterインターンを募集しています!

可茂IT塾ではFlutterインターンを募集しています!可茂IT塾のエンジニアの判断で、一定以上のスキルをを習得した方には有給でのインターンも受け入れています。

Read More
U30可茂ITインターンハッカソン

U30可茂ITインターンハッカソン

12月28,29日開催。2日間でアプリ開発の企画から完成までを目指す!U30可茂ITインターンハッカソンを開催します。

Read More