Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Às vezes, as coisas não saem como planejado e um erro ocorre.
Em caso de dúvida, verifique o erro retornado e veja o que diz a mensagem.
O código a seguir mostra uma implementação personalizada do gerenciador de erros que inspeciona o código do erro e a mensagem de erro retornados pelo Cloud Storage. Esses gerenciadores de erros podem ser adicionados a vários objetos usados na API Cloud Storage (por exemplo, UploadTask e FileDownloadTask).
Kotlin
internalinnerclassMyFailureListener:OnFailureListener{overridefunonFailure(exception:Exception){valerrorCode=(exceptionasStorageException).errorCodevalerrorMessage=exception.message// test the errorCode and errorMessage, and handle accordingly}}
classMyFailureListenerimplementsOnFailureListener{@OverridepublicvoidonFailure(@NonNullExceptionexception){interrorCode=((StorageException)exception).getErrorCode();StringerrorMessage=exception.getMessage();// test the errorCode and errorMessage, and handle accordingly}}
Se você verificar a mensagem de erro e tiver Cloud Storage Security Rules que permitam sua ação, mas ainda está com dificuldades para corrigir o erro, acesse nossa página de suporte e diga como podemos ajudar.
Solucionar mensagens de erro
Há diversos motivos pelos quais erros podem ocorrer, como um arquivo
não existente, usuário sem permissão para acessar o arquivo desejado ou
cancelamento do upload do arquivo por parte do usuário.
Para diagnosticar corretamente o problema e tratar o erro, veja a seguir uma lista completa de todos
os erros informados por nosso cliente e como eles ocorrem. Os códigos de erro nesta
tabela são definidos na classe StorageException como constantes inteiras.
Código
Motivo
ERROR_UNKNOWN
Ocorreu um erro desconhecido.
ERROR_OBJECT_NOT_FOUND
Nenhum objeto na referência especificada.
ERROR_BUCKET_NOT_FOUND
Não há buckets configurados para o Cloud Storage
ERROR_PROJECT_NOT_FOUND
Não há projetos configurados para o Cloud Storage
ERROR_QUOTA_EXCEEDED
A cota do seu bucket do Cloud Storage foi excedida. Se você estiver usando o plano de preços do Spark, considere fazer upgrade para o plano de preços do Blaze de pagamento por uso. Se você já estiver usando o plano de preços do Blaze, entre em contato com o suporte do Firebase.
O usuário não está autenticado. Faça a autenticação e tente novamente.
ERROR_NOT_AUTHORIZED
O usuário não está autorizado a executar a ação solicitada. Verifique se suas regras estão corretas.
ERROR_RETRY_LIMIT_EXCEEDED
O limite de tempo em uma operação (upload, download, exclusão etc.) foi excedido. Tente novamente.
ERROR_INVALID_CHECKSUM
O arquivo no cliente não corresponde à soma de verificação do arquivo recebido pelo servidor. Envie novamente.
ERROR_CANCELED
O usuário cancelou a operação.
Além disso, se você tentar chamar getReferenceFromUrl() com um URL inválido,
uma IllegalArgumentException será gerada. O argumento para
o método acima precisa ter o formato gs://bucket/object ou
https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=<TOKEN>.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-09-05 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/cc307b137a106d66a52fa6e9bee6f4f55dab9f76/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/cc307b137a106d66a52fa6e9bee6f4f55dab9f76/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`"]]