Terkadang beberapa hal tidak berjalan sesuai rencana dan terjadi error.
Jika merasa ragu, periksa error yang ditampilkan, lalu lihat isi pesannya.
Kode berikut menunjukkan implementasi pengendali error khusus yang memeriksa kode error dan pesan error yang ditampilkan oleh Cloud Storage. Pengendali error tersebut dapat ditambahkan ke beragam objek yang digunakan dalam Cloud Storage API (misalnya, UploadTask
dan FileDownloadTask
).
Kotlin+KTX
internal inner class MyFailureListener : OnFailureListener { override fun onFailure(exception: Exception) { val errorCode = (exception as StorageException).errorCode val errorMessage = exception.message // test the errorCode and errorMessage, and handle accordingly } }
Java
class MyFailureListener implements OnFailureListener { @Override public void onFailure(@NonNull Exception exception) { int errorCode = ((StorageException) exception).getErrorCode(); String errorMessage = exception.getMessage(); // test the errorCode and errorMessage, and handle accordingly } }
Jika Anda telah memeriksa pesan error dan memiliki Cloud Storage Security Rules yang mengizinkan tindakan Anda, tetapi masih kesulitan dalam memperbaiki error tersebut, buka halaman Dukungan dan beri tahu kami bantuan apa yang diperlukan.
Menangani Pesan Error
Ada sejumlah alasan terjadinya error, di antaranya adalah tidak adanya file, pengguna tidak memiliki izin untuk mengakses file yang diinginkan, atau pengguna membatalkan upload file.
Untuk mendiagnosis masalah dan menangani error dengan tepat, baca daftar lengkap berikut yang berisi semua error yang mungkin dialami klien kami, beserta penyebab setiap error. Kode error dalam tabel ini
ditentukan dalam class StorageException
sebagai konstanta bilangan bulat.
Kode | Alasan |
---|---|
ERROR_UNKNOWN |
Terjadi error tak dikenal. |
ERROR_OBJECT_NOT_FOUND |
Tidak ada objek pada referensi yang ditentukan. |
ERROR_BUCKET_NOT_FOUND |
Tidak ada bucket yang dikonfigurasi untuk Cloud Storage |
ERROR_PROJECT_NOT_FOUND |
Tidak ada project yang dikonfigurasi untuk Cloud Storage |
ERROR_QUOTA_EXCEEDED |
Kuota di bucket Cloud Storage telah terlampaui. Jika Anda menggunakan paket harga Spark, pertimbangkan untuk mengupgrade ke paket harga Blaze bayar sesuai penggunaan. Jika Anda sudah menggunakan paket harga Blaze, hubungi Dukungan Firebase. Penting: Mulai |
ERROR_NOT_AUTHENTICATED |
Pengguna tidak terautentikasi. Autentikasi pengguna, lalu coba lagi. |
ERROR_NOT_AUTHORIZED |
Pengguna tidak memiliki izin untuk melakukan tindakan yang diminta. Periksa aturan Anda untuk memastikan bahwa aturan tersebut sudah benar. |
ERROR_RETRY_LIMIT_EXCEEDED |
Anda telah melebihi batas waktu maksimum suatu operasi (upload, download, hapus, dll.). Coba lagi. |
ERROR_INVALID_CHECKSUM |
File pada klien tidak cocok dengan checksum file yang diterima oleh server. Coba upload lagi. |
ERROR_CANCELED |
Pengguna membatalkan operasi. |
Selain itu, IllegalArgumentException
akan ditampilkan jika getReferenceFromUrl()
dipanggil
dengan URL yang tidak valid. Argumen untuk
metode di atas harus berupa gs://bucket/object
atau
https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN>