Android'de Cloud Storage hatalarını işleme
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Bazen işler planlandığı gibi gitmez ve bir hata oluşur.
Şüphe duyduğunuzda döndürülen hatayı kontrol edin ve hata mesajının ne söylediğine bakın.
Aşağıdaki kod, Cloud Storage tarafından döndürülen hata kodunu ve hata mesajını inceleyen özel bir hata işleyici uygulamasını gösterir. Bu tür hata işleyiciler, Cloud Storage API'sinde kullanılan çeşitli nesnelere (örneğin, UploadTask
ve FileDownloadTask
) eklenebilir.
Kotlin
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
}
}
Hata mesajını kontrol ettiyseniz ve işleminize izin veren Cloud Storage Security Rules olmasına rağmen hatayı düzeltmekte zorlanıyorsanız destek sayfamızı ziyaret ederek size nasıl yardımcı olabileceğimizi bildirin.
Hata Mesajlarını İşleme
Hataların oluşmasının çeşitli nedenleri vardır. Örneğin, dosya mevcut olmayabilir, kullanıcının istenen dosyaya erişme izni olmayabilir veya kullanıcı dosya yüklemeyi iptal etmiş olabilir.
Sorunu doğru şekilde teşhis etmek ve hatayı gidermek için müşterimizin bildireceği tüm hataların ve bu hataların nasıl oluşabileceğinin tam listesini aşağıda bulabilirsiniz. Bu tablodaki hata kodları, StorageException
sınıfında tam sayı sabitleri olarak tanımlanır.
Kod |
Neden |
ERROR_UNKNOWN |
Bilinmeyen bir hata oluştu. |
ERROR_OBJECT_NOT_FOUND |
Belirtilen referansta nesne yok. |
ERROR_BUCKET_NOT_FOUND |
Cloud Storage için yapılandırılmış bir paket yok |
ERROR_PROJECT_NOT_FOUND |
Cloud Storage için yapılandırılmış proje yok |
ERROR_QUOTA_EXCEEDED |
Cloud Storage paketinizdeki kota aşıldı. Spark fiyatlandırma planını kullanıyorsanız kullandıkça öde Blaze fiyatlandırma planına geçmeyi düşünebilirsiniz. Blaze fiyatlandırma planını kullanıyorsanız Firebase Destek Ekibi ile iletişime geçin.
Önemli: 1 Ekim 2025'ten itibaren Cloud Storage (varsayılan paketler dahil) kullanmak için Blaze fiyatlandırma planı gerekli olacak. |
ERROR_NOT_AUTHENTICATED |
Kullanıcının kimliği doğrulanmadı. Lütfen kimlik doğrulama işlemini yapıp tekrar deneyin. |
ERROR_NOT_AUTHORIZED |
Kullanıcının istenen işlemi gerçekleştirme yetkisi yok. Kurallarınızın doğru olduğundan emin olmak için bunları kontrol edin. |
ERROR_RETRY_LIMIT_EXCEEDED |
Bir işlemle (yükleme, indirme, silme vb.) ilgili maksimum süre sınırı aşıldı. Tekrar deneyin. |
ERROR_INVALID_CHECKSUM |
İstemcideki dosya, sunucu tarafından alınan dosyanın sağlama toplamıyla eşleşmiyor. Tekrar yüklemeyi deneyin. |
ERROR_CANCELED |
Kullanıcı, işlemi iptal etti. |
Ayrıca, getReferenceFromUrl()
işlevini geçersiz bir URL ile çağırmaya çalışmak IllegalArgumentException
hatasının oluşmasına neden olur. Yukarıdaki yöntemin bağımsız değişkeni gs://bucket/object
veya https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN>
biçiminde olmalıdır.
Aksi belirtilmediği sürece bu sayfanın içeriği Creative Commons Atıf 4.0 Lisansı altında ve kod örnekleri Apache 2.0 Lisansı altında lisanslanmıştır. Ayrıntılı bilgi için Google Developers Site Politikaları'na göz atın. Java, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-08-22 UTC.
[null,null,["Son güncelleme tarihi: 2025-08-22 UTC."],[],[],null,["\u003cbr /\u003e\n\nSometimes things don't go as planned and an error occurs.\n\nWhen in doubt, check the error returned and see what the error message says.\nThe following code shows a custom error handler implementation that inspects\nthe error code and error message returned by Cloud Storage. Such error\nhandlers can be added to various objects used in the Cloud Storage API (for\nexample, `UploadTask` and `FileDownloadTask`). \n\nKotlin \n\n```kotlin\ninternal inner class MyFailureListener : OnFailureListener {\n override fun onFailure(exception: Exception) {\n val errorCode = (exception as StorageException).errorCode\n val errorMessage = exception.message\n // test the errorCode and errorMessage, and handle accordingly\n }\n}https://github.com/firebase/snippets-android/blob/391c1646eacf44d2aab3f76bcfa60dfc6c14acf1/storage/app/src/main/java/com/google/firebase/referencecode/storage/kotlin/StorageActivity.kt#L492-L498\n```\n\nJava \n\n```java\nclass MyFailureListener implements OnFailureListener {\n @Override\n public void onFailure(@NonNull Exception exception) {\n int errorCode = ((StorageException) exception).getErrorCode();\n String errorMessage = exception.getMessage();\n // test the errorCode and errorMessage, and handle accordingly\n }\n}https://github.com/firebase/snippets-android/blob/391c1646eacf44d2aab3f76bcfa60dfc6c14acf1/storage/app/src/main/java/com/google/firebase/referencecode/storage/StorageActivity.java#L618-L625\n```\n\nIf you've checked the error message and have Cloud Storage Security Rules that allow your\naction, but are still struggling to fix the error, visit our\n[Support page](/support) and let us know how we can help.\n\nHandle Error Messages\n\nThere are a number of reasons why errors may occur, including the file\nnot existing, the user not having permission to access the desired file, or the\nuser cancelling the file upload.\n\nTo properly diagnose the issue and handle the error, here is a full list of all\nthe errors our client will raise, and how they can occur. Error codes in this\ntable are defined in the `StorageException` class as integer constants.\n\n| Code | Reason |\n|------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `ERROR_UNKNOWN` | An unknown error occurred. |\n| `ERROR_OBJECT_NOT_FOUND` | No object exists at the specified reference. |\n| `ERROR_BUCKET_NOT_FOUND` | No bucket is configured for Cloud Storage |\n| `ERROR_PROJECT_NOT_FOUND` | No project is configured for Cloud Storage |\n| `ERROR_QUOTA_EXCEEDED` | Quota on your Cloud Storage bucket has been exceeded. If you're on the Spark pricing plan, consider upgrading to the [pay-as-you-go Blaze pricing plan](/pricing). If you're already on the Blaze pricing plan, reach out to Firebase Support. **Important** : Starting October 1, 2025, the [Blaze pricing plan will be *required* to use Cloud Storage](/docs/storage/faqs-storage-changes-announced-sept-2024), even default buckets. |\n| `ERROR_NOT_AUTHENTICATED` | User is unauthenticated, please authenticate and try again. |\n| `ERROR_NOT_AUTHORIZED` | User is not authorized to perform the requested action, check your rules to ensure they are correct. |\n| `ERROR_RETRY_LIMIT_EXCEEDED` | The maximum time limit on an operation (upload, download, delete, etc.) has been excceded. Try again. |\n| `ERROR_INVALID_CHECKSUM` | File on the client does not match the checksum of the file received by the server. Try uploading again. |\n| `ERROR_CANCELED` | User canceled the operation. |\n\nAdditionally, attempting to call `getReferenceFromUrl()` with an invalid URL\nwill result in an `IllegalArgumentException` from being thrown. The argument to\nthe above method must be of the form `gs://bucket/object` or\n`https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=\u003cTOKEN\u003e`"]]