Sebagai developer yang tiap hari hidup berdampingan dengan Firebase, saya selalu merasa Storage itu seperti lemari ajaib: kita masukin file, lalu poof! langsung tersimpan di cloud. Tapi suatu hari, lemari ajaib itu tiba-tiba berubah jadi lemari kosong. Iya, kosong. File yang saya upload tidak muncul, tidak terlihat, dan saya mulai mempertanyakan pilihan karier saya.
Artikel ini bercerita tentang pengalaman pribadi saya menghadapi masalah Firebase Files tidak tampil di Storage, bagaimana paniknya saya waktu itu, dan tentu saja, bagaimana saya akhirnya menemukan solusinya satu per satu. Kalau kamu sedang mengalami hal yang sama, selamat kamu sedang membaca artikel yang tepat.
Awal Mula Masalah: File Hilang Entah Kemana
Waktu itu saya sedang mengerjakan aplikasi upload dokumen. Flow-nya sederhana:
-
User memilih file.
-
File diupload ke Firebase Storage.
-
URL disimpan ke Firestore.
-
Semua bahagia.
Itu teorinya.
Realitanya?
Saya upload file → Upload success → buka Firebase Console → Storage kosong melompong.
Saya mengedip sekali.
Mengedip dua kali.
Refresh.
Logout.
Login.
Refresh lagi.
Tetap nihil.
Di situ saya mulai agak kesal. Firebase Storage kok seperti ghosting menerima file saya tapi tidak menampilkannya.
Saat Panik Mulai Datang
Langkah pertama saya adalah memeriksa terminal. Tidak ada error.
Langkah kedua: cek log Flutter. Tidak ada error juga.
Langkah ketiga: coba upload file lain. Hasilnya sama.
Di titik itu saya mulai berpikir:
“Apakah file saya masuk ke dimensi lain? Atau saya salah buka project Firebase? Atau mungkin Firebase lagi ngambek?”
Spoiler: iya, saya memang salah buka project. Tapi tunggu dulu, itu cuma bagian kecil dari tragedi ini.
Penyebab-Penyebab Umum File Tidak Muncul di Firebase Storage
Setelah investigasi serius (dan beberapa cangkir kopi), saya akhirnya menemukan beberapa penyebab yang sering bikin file tidak muncul di Storage. Berikut daftar lengkapnya berdasarkan pengalaman asli + rasa frustasi maksimum.
1. Salah Project (dan Ini Memalukan, Tapi Nyata)
Firebase itu bisa punya banyak project. Dan saya… ternyata buka project yang salah.
Saya upload file ke Project A.
Saya cek Storage di Project B.
File tidak muncul.
Saya panik.
Padahal salah buka project.
Solusi:
-
Pastikan
google-services.json(Android) danGoogleService-Info.plist(iOS) cocok dengan project yang kamu buka di Firebase Console. -
Cek Firebase Console → Settings → General → AppID → cocokkan dengan yang ada di aplikasi.
Sejak itu saya pasang sticky note bertuliskan:
“Cek project dulu sebelum panik.”
2. Masalah Rules: File Sebenarnya Tersimpan, Tapi Kamu Tidak Punya Izin Lihat
Ini penyebab kedua yang paling sering.
Contoh rules default:
allow read, write: if request.auth != null;
Artinya:
-
kalau upload pakai emulator atau token custom tanpa auth → upload berhasil
-
tapi Storage Console → tidak bisa menampilkan file
Kasarnya:
Firebase sebenarnya nyimpan filenya, tapi kamu tidak diizinkan melihatnya.
Solusi rules sementara (untuk testing):
allow read, write: if true;
Solusi rules produksi:
allow read, write: if request.auth != null;
Atau lebih aman:
allow read: if true;
allow write: if request.auth != null;
Setelah saya perbaiki rules, file mulai muncul seperti biasa. Lega.
3. Path Upload yang Salah
Ini juga sering banget terjadi.
Saya upload ke:
ref.child("uploads/images/user123/profile.png");
Tapi saya cek di Storage path:
uploads/image/user123
Huruf “s” hilang.
Saya langsung tepuk jidat waktu itu.
Solusinya simpel:
-
Print path upload sebelum kirim.
-
Gunakan Struktur folder terstandarisasi.
-
Hindari path dinamis yang sulit dilacak.
Contoh yang aman:
final ref = FirebaseStorage.instance.ref("users/$userId/profile.png");4. Upload Sukses Tapi Tidak Commit Karena Token Expired
Kasus ini saya temukan saat upload file besar.
Firebase Storage upload → 100%
Namun file tidak tampil.
Setelah saya debug, ternyata uploadnya gagal commit di akhir karena token auth expired.
Solusi:
-
Pastikan user login lagi.
-
Gunakan refresh token.
Gunakan
putFile()yang memiliki retry otomatis.
5. Upload Tidak Selesai Tapi Aplikasi Menganggap Selesai
Di Flutter, saya sempat memakai code seperti:
ref.putFile(file);
print("Upload done");
Padahal sebenarnya upload belum selesai!
File 0 KB → Firebase Storage tidak menampilkan file.
Solusi:
Gunakan await:
await ref.putFile(file);
Atau kalau mau lebih detail:
final uploadTask = ref.putFile(file);
final snapshot = await uploadTask.whenComplete(() => null);6. Firebase Storage Butuh Refresh Console
Ini lucu, tapi benar.
Kadang Firebase Storage tidak update realtime, terutama pada folder yang baru dibuat.
Saya upload file → tidak muncul
Saya refresh manual → masih tidak muncul
Saya reload seluruh tab → muncul
Masalah ini kecil, tapi cukup membuat saya mempertanyakan kewarasan.
7. Menggunakan Emulator Tapi Mengecek di Console Live
Ini juga pernah saya alami.
Saya lagi testing pakai:
firebase emulators:start
Lalu upload file ke Storage Emulator.
Saya buka Firebase Console → Storage → kosong.
Tentu saja kosong. Itu emulator, bukan project live.
Sejak itu saya tahu perbedaan antara:
-
Storage emulator lokal
Storage cloud asli
Setelah Semua Usaha Itu, Apa Solusi Pastinya?
Dari pengalaman saya, berikut checklist paling ampuh:
- Pastikan project Firebase benar
- Pastikan IAM dan rules tidak membatasi viewer
- Periksa path upload
- Pastikan upload berhasil dan tidak error
- Pastikan kamu tidak memakai emulator saat mengecek console
- Gunakan
awaitsaat upload - Refresh Storage console (serius, lakukan saja)
Setelah saya mengikuti checklist itu, file akhirnya muncul dengan damai di Firebase Storage.
Dan saya pun bisa menarik napas lega.
Contoh Kode Upload yang Sangat Aman
Akhirnya saya membuat snippet anti-error-storage sendiri:
Future<String?> uploadFile(File file, String path) async {
try {
final ref = FirebaseStorage.instance.ref(path);
final uploadTask = ref.putFile(file);
final snapshot = await uploadTask.whenComplete(() => null);
final url = await snapshot.ref.getDownloadURL();
return url;
} catch (e) {
print("Upload error: $e");
return null;
}
}
Dengan begini:
-
Upload terjamin selesai
-
Semua error ketangkap
-
URL pasti didapat
File 100% tampil di Storage
Masalah Storage Itu Normal
Kalau kamu sekarang sedang menghadapi file yang tidak tampil di Firebase Storage, jangan panik dulu. Itu biasa, bahkan developer senior pun sering mengalaminya (dan tidak mengakuinya).
Firebase Storage itu powerful, tapi tetap punya banyak kemungkinan untuk bikin pusing.
Ingat prinsip sakti:
“Kalau Firebase tidak menunjukkan file-nya, itu bukan berarti upload gagal bisa jadi kamu yang salah lihat.”
Semoga cerita dan solusi yang saya bagikan ini bisa menyelamatkan kamu dari rasa frustasi yang dulu saya alami.

Tidak ada komentar:
Posting Komentar