gpt4 book ai didi

java - 如何在 Firebase 中添加图像列表?

转载 作者:行者123 更新时间:2023-12-02 08:42:01 26 4
gpt4 key购买 nike

我想在 firebase 中上传图像列表,但在 firebase 上传成功监听器中不会在 OnSuccessListener 上添加图像列表。

尝试过 我在 add onSuccessListener 类之外添加字符串值,它可以工作,并且我尝试记录它也可以工作的 url。但它不会在 OnSuccessListener 的 arrayList 中添加字符串值。谢谢您的帮助。

主要代码

 public void UploadImage() {
if (isUserSelected != null) {
progressDialog.setTitle("Image is Uploading...");
Log.d(TAG, "UploadImage: uploading");
progressDialog.show();
Log.d(TAG, "UploadImage: after progress bar");
for (int i = 0; i < multipleFileUploads.size(); i++) {
Log.d(TAG, "UploadImage: " + i);
final StorageReference storageReference2 = storageReference.child(System.currentTimeMillis() + "." + GetFileExtension(multipleFileUploads.get(i)));
storageReference2.putFile(multipleFileUploads.get(i))
.addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
Log.d(TAG, "onSuccess: ");
progressDialog.dismiss();
Toast.makeText(getApplicationContext(), "Image Uploaded Successfully ", Toast.LENGTH_LONG).show();
storageReference2.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
Log.d(TAG, "onSuccess: uri " + uri.toString());
imagelist.add(uri.toString());

}
});
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.d(TAG, "onFailure: " + e.getMessage());
}
}).addOnProgressListener(new OnProgressListener<UploadTask.TaskSnapshot>() {
@Override
public void onProgress(UploadTask.TaskSnapshot taskSnapshot) {
Log.d(TAG, "onProgress: " + taskSnapshot.getBytesTransferred());
Log.d(TAG, "onProgress: " + taskSnapshot.getTotalByteCount());
}
}).addOnCompleteListener(new OnCompleteListener<UploadTask.TaskSnapshot>() {
@Override
public void onComplete(@NonNull Task<UploadTask.TaskSnapshot> task) {
Log.d(TAG, "onComplete: " + task.getException());
}
});
}
imageList.add("custom list");
uploadinfo imageUploadInfo = new uploadinfo(txtdata.getText().toString(), txtData1.getText().toString(), imageList.toString());
String ImageUploadId = databaseReference.push().getKey();
databaseReference.child(ImageUploadId).setValue(imageUploadInfo);


} else {
Toast.makeText(uploadimg1.this, "Please Select Image or Add Image Name", Toast.LENGTH_LONG).show();

}

Firebase 的 POJO 代码

public class uploadinfo {
public String imageName;
public String imageName1;
public String imageListString;

public uploadinfo(String imageName, String imageName1, String imageListString) {
this.imageName = imageName;
this.imageName1 = imageName1;
this.imageListString = imageListString;
}

public String getImageName() {
return imageName;
}

public void setImageName(String imageName) {
this.imageName = imageName;
}

public String getImageName1() {
return imageName1;
}

public void setImageName1(String imageName1) {
this.imageName1 = imageName1;
}

public String getImageListString() {
return imageListString;
}

public void setImageListString(String imageListString) {
this.imageListString = imageListString;
}
}

在 Firebase 中 enter image description here

最佳答案

问题可能出在您的模型中。在 firebase 中,顺序为 imageListString、imageName、imageName1。但在构造函数的模型中,您得到了 String imageName、String imageName1、String imageListString。同时,我不确定在将其发送到 Firebase 之前如何生成您创建的列表。

关于java - 如何在 Firebase 中添加图像列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60633507/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com