当我尝试在 Android 的 ImageView 中设置 FirebaseStorage 图像文件时出现对象未启动异常

Object Not Fount Exception when I am trying to set FirebaseStorage Image file in ImageView in Android

我正在开发一个应用程序,我想通过使用 url 将它设置为 Imageview 来显示从 firebase 存储上传的图像。我正在使用以下代码来完成此操作。

     StorageReference storageReference = FirebaseStorage.getInstance().getReference("ImageFolder/"+imageId);
     storageReference.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
                        @Override
                        public void onSuccess(Uri uri) {  
                          Picasso.with(getContext()).load(uri).into(viewHolder.imageThumbnail);                          
                        }
                    }).addOnFailureListener(new OnFailureListener() {
                        @Override
                        public void onFailure(@NonNull Exception exception) {
                            // Handle any errors
                        }
                    });

这会引发如下异常

发生存储异常。 对象在该位置不存在。 代码:-13010 HttpResult:404 08-09 22:50:05.280 10915-11000/com.app.myapp E/StorageException: { "error": { "code": 404, "message": "Not Found. Could not get object" }} java.io.IOException: { "error": { "code": 404, "message": "Not Found. Could not get object" }} 在 bxr.a(:com.google.android.gms.DynamiteModulesC:424) 在 bxr.a(:com.google.android.gms.DynamiteModulesC:1404) 在 bxl.onTransact(:com.google.android.gms.DynamiteModulesC:53) 在 android.os.Binder.transact(Binder.java:387) 在 com.google.android.gms.internal.zzamj$zza$zza.zzss(未知来源) 在 com.google.android.gms.internal.zzamm.zza(来源不明) 在 com.google.android.gms.internal.zzamd.zza(来源不明)

请帮忙解决问题。

我有同样的问题,在我的应用程序中,我在数据库中保存 URL,在存储中保存图像。

只需清理整个 STORAGE 和 DATABASE 东西,它在我的情况下效果很好。

我找到了为什么会这样..

it returns 非空 firebase.Promise 包含字符串 A Promise that resolve with the download URL or rejects如果获取失败,包括如果对象不存在

Check here for this method getDownloadURL()

当指定位置的 Firebase 存储中没有项目时,就会出现这种情况。

下面是 Android 中的异常:

04-13 07:07:48.851 20923-22411/org.emeritus.globalivy E/StorageException: {  "error": {    "code": 404,    "message": "Not Found.  Could not get object"  }}
                                                                          java.io.IOException: {  "error": {    "code": 404,    "message": "Not Found.  Could not get object"  }}
                                                                              at bti.a(:com.google.android.gms.DynamiteModulesC:428)
                                                                              at bti.a(:com.google.android.gms.DynamiteModulesC:1408)
                                                                              at btc.onTransact(:com.google.android.gms.DynamiteModulesC:53)
                                                                              at android.os.Binder.transact(Binder.java:380)
                                                                              at com.google.android.gms.internal.zzbub$zza$zza.zzjM(Unknown Source)
                                                                              at com.google.android.gms.internal.zzbue.zzd(Unknown Source)
                                                                              at com.google.android.gms.internal.zzbtv.zza(Unknown Source)
                                                                              at com.google.android.gms.internal.zzbtv.zze(Unknown Source)
                                                                              at com.google.firebase.storage.zzb.run(Unknown Source)
                                                                              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
                                                                              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)

如果 Firebase SDK 不将整个堆栈跟踪输出到日志而只输出这个

就好了
StorageException has occurred.
                                                                          Object does not exist at location.