Member 14883729 Ответов: 1

Как удалить изображение из облачного хранилища firebase


Я сделал приложение для социальных сетей, где пользователи могут загружать туда фотографии. Я хочу добавить опцию удаления для пользователей в приложении. Я хочу, чтобы пользователи удалили свою фотографию из облачного хранилища Firebase. Вот мой код

val photoRef: StorageReference = FirebaseStorage.getInstance().getReferenceFromUrl(contentDTOs[p1].imageUrl.toString())
photoRef.delete().addOnSuccessListener { // File deleted successfully
    Toast.makeText(context, "onSuccess: deleted file",Toast.LENGTH_SHORT).show()
}.addOnFailureListener { // Uh-oh, an error occurred!
    Toast.makeText(context, "onFailure: did not delete file",Toast.LENGTH_SHORT).show()
}

return@setOnLongClickListener true

Но всякий раз, когда я пытаюсь удалить любую картинку, она возвращает мне ошибку

E/StorageException: StorageException has occurred.
    Object does not exist at location.
     Code: -13010 HttpResult: 404
E/StorageException: {  "error": {    "code": 404,    "message": "Not Found.  Could not delete object",    "status": "DELETE_OBJECT"  }}
    java.io.IOException: {  "error": {    "code": 404,    "message": "Not Found.  Could not delete object",    "status": "DELETE_OBJECT"  }}


Что я уже пробовал:

Я пытаюсь удалить изображения из облачного хранилища firebase.

1 Ответов

Рейтинг:
2

Sandeep Mewara

На основании документации: Код ошибки |  Военнослужащих[^]

HTTP error code = 404 == UNREGISTERED

Цитата:
Экземпляр приложения был незарегистрирован в FCM. Обычно это означает, что используемый токен больше не действителен и необходимо использовать новый. Эта ошибка может быть вызвана отсутствующими регистрационными маркерами или незарегистрированными маркерами.
Пропущенная Регистрация: Если целевой объект сообщения установлен в токен, убедитесь, что запрос содержит регистрационный токен.
Не зарегистрирован: существующий регистрационный токен может перестать быть действительным в ряде сценариев, включая:
- Если клиентское приложение отменяет регистрацию с помощью FCM.
- Если клиентское приложение автоматически не регистрируется, что может произойти, если пользователь удалит приложение. Например, в iOS, если служба обратной связи APNS сообщила, что маркер APNS недействителен.
- Если срок действия регистрационного токена истекает (например, Google может решить обновить регистрационные токены или срок действия токена APNS истек для устройств iOS).
- Если клиентское приложение обновлено, но новая версия не настроена на прием сообщений. Во всех этих случаях удалите этот регистрационный маркер с сервера приложений и прекратите использовать его для отправки сообщений.

Пожалуйста, попробуйте использовать соответствующие регистрационные жетоны.