如何从android studio中的firabase存储获取下载url

goqiplq2  于 2021-08-20  发布在  Java
关注(0)|答案(0)|浏览(230)

我试图从存储器下载url,但应用程序总是崩溃。当我调试代码时,我在哪一行发现了错误,但idk如何在logcat中修复它,它表示任务尚未完成。这是我的代码,我从中获得下载url

  1. uploadTask.addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
  2. @Override
  3. \\THIS LINE public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
  4. storageReference.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
  5. @Override
  6. public void onSuccess(Uri uri) {
  7. String downloaduri = uri.toString();
  8. Map newimage = new HashMap();
  9. newimage.put("profileImageUri", downloaduri);
  10. reference.child("Customer").child(userID).updateChildren(newimage);
  11. finish();
  12. }
  13. });
  14. }
  15. });

这就是当应用程序崩溃时我在日志中看到的

  1. --------- beginning of crash
  2. E/AndroidRuntime: FATAL EXCEPTION: main
  3. Process: com.example.deliveryapp, PID: 2824
  4. java.lang.IllegalArgumentException: getDownloadUrl() is not supported at the root of the bucket.
  5. at com.google.firebase.storage.GetDownloadUrlTask.<init>(GetDownloadUrlTask.java:46)
  6. at com.google.firebase.storage.StorageReference.getDownloadUrl(StorageReference.java:370)
  7. at com.example.deliveryapp.Profile2$5.onSuccess(Profile2.java:131)
  8. at com.example.deliveryapp.Profile2$5.onSuccess(Profile2.java:128)
  9. at com.google.firebase.storage.StorageTask.lambda$new$0$StorageTask(StorageTask.java:123)
  10. at com.google.firebase.storage.-$$Lambda$StorageTask$xlHsb5OfSRp-di5vg8sdDdXsCO4.raise(Unknown Source:6)
  11. at com.google.firebase.storage.TaskListenerImpl.lambda$onInternalStateChanged$2$TaskListenerImpl(TaskListenerImpl.java:90)
  12. at com.google.firebase.storage.-$$Lambda$TaskListenerImpl$S8elBxPWPDCBbbHv0Z6yA1jvX68.run(Unknown Source:6)
  13. at android.os.Handler.handleCallback(Handler.java:938)
  14. at android.os.Handler.dispatchMessage(Handler.java:99)
  15. at android.os.Looper.loop(Looper.java:223)
  16. at android.app.ActivityThread.main(ActivityThread.java:7656)
  17. at java.lang.reflect.Method.invoke(Native Method)
  18. at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
  19. at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题