🐷

【Flutter】FirebaseStorageでアップロードできない問題の解決(2025年3月)

に公開

久しぶりにFirebaseStorageを使ったらハマってしまったので備忘録です。

起きた問題

まず、以下のようなコードでアップロードしようとして失敗しました。(アップロードした感じになって、実際にはConsoleに現れない)

      final storageRef = FirebaseStorage.instance.ref().child(storagePath);
      await storageRef.putFile(audioFile);

bucket指定で解決

もしかしたら、bucketを指定したらうまくいくかな?と思い、以下のように指定したらうまく行きました。

      final storageRef = FirebaseStorage.instanceFor(bucket: 'gs://tango-dev-8d2f5.firebasestorage.app').ref().child(storagePath);
      await storageRef.putFile(audioFile);

これで一旦は解決しましたが、bucket指定せずにFirebaseStorage.instance で行きたいですよね。

google-services.jsonやoptionを設定し直して解決

google-services.json等を新しくダウンロードし直して、さらに DefaultFirebaseOptions.currentPlatform の内容も更新すると、FirebaseStorage.instance でもうまく行きました。(storage_bucketがappspot.comからfirebasestorage.appに変わりました。)

参考リンク

https://firebase.google.com/docs/storage/android/start?hl=ja#create-default-bucket

Flutter大学

Discussion