java - firebase StorageException 被打印,即使我处理它

标签 java android firebase firebase-storage

我想检查 Firebase 存储中是否存在文件,如果存在则更新其元数据。 OnFailureListener 按预期工作,如下所示:

storageRef.child("users/me/file.png").getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
    @Override
    public void onSuccess(Uri uri) {
        // Got the download URL for 'users/me/profile.png'
    }
}).addOnFailureListener(new OnFailureListener() {
    @Override
    public void onFailure(@NonNull Exception exception) {
        // File not found
    }
});

但是,我在 logcat 上收到此错误跟踪:

2020-05-21 01:45:04.484 10910-11160/pl.edu.mimuw.exshare E/StorageException: StorageException has occurred.
    Object does not exist at location.
     Code: -13010 HttpResult: 404
2020-05-21 01:45:04.489 10910-11160/pl.edu.mimuw.exshare E/StorageException: {  "error": {    "code": 404,    "message": "Not Found.  Could not get object",    "status": "GET_OBJECT"  }}
    java.io.IOException: {  "error": {    "code": 404,    "message": "Not Found.  Could not get object",    "status": "GET_OBJECT"  }}
        at com.google.firebase.storage.network.NetworkRequest.parseResponse(com.google.firebase:firebase-storage@@19.1.1:433)
        at com.google.firebase.storage.network.NetworkRequest.parseErrorResponse(com.google.firebase:firebase-storage@@19.1.1:450)
        at com.google.firebase.storage.network.NetworkRequest.processResponseStream(com.google.firebase:firebase-storage@@19.1.1:441)
        at com.google.firebase.storage.network.NetworkRequest.performRequest(com.google.firebase:firebase-storage@@19.1.1:272)
        at com.google.firebase.storage.network.NetworkRequest.performRequest(com.google.firebase:firebase-storage@@19.1.1:286)
        at com.google.firebase.storage.internal.ExponentialBackoffSender.sendWithExponentialBackoff(com.google.firebase:firebase-storage@@19.1.1:70)
        at com.google.firebase.storage.internal.ExponentialBackoffSender.sendWithExponentialBackoff(com.google.firebase:firebase-storage@@19.1.1:62)
        at com.google.firebase.storage.GetMetadataTask.run(com.google.firebase:firebase-storage@@19.1.1:61)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:764)

有什么方法可以阻止打印此错误消息吗?

最佳答案

如果存储 SDK 在日志中打印某些内容,则除了从 open source 自行构建 SDK 之外,您无法更改该行为。 ,并删除您不需要的日志记录。

或者,您可以忽略该日志。或者您可以在 GitHub 上提交问题并要求开发人员将其删除。

关于java - firebase StorageException 被打印,即使我处理它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61934181/

相关文章:

android - glReadPixels 到 EGLImage 直接纹理比 glReadPixels 到 ByteBuffer 和 glTexSubImage2D 慢?

java - 无法访问数组的值

ios - 将 token 发送到后端 strip objective-c

android - 如何在 Material Design 中展开/折叠 android 组件

java - 用户无法注销 firebase android

ios - Firebase 通知记录/日志 API

java - 如何使用 Spring Security SAML 配置远程发现?

java - Spring Data Neo4j 中的 DynamicRelationshipType 或在运行时定义关系类型

java - Ignite C++ 客户端用于 cassandra 集成

java - 我正在尝试在 Applet 中添加音频 url