Java 我正在将图像上载到Firebase存储,然后我需要将图像URL作为文本添加到Firebase数据库中
我有一个模型类,它的名称是(餐厅)我想添加餐厅的详细信息,如餐厅的地址和名称,并在Firebase存储中上载图像,在Firebase数据库中上载详细信息,然后我需要将图像URL作为文本添加到Firebase数据库中 //这里我正在上传图片Java 我正在将图像上载到Firebase存储,然后我需要将图像URL作为文本添加到Firebase数据库中,java,android,firebase-realtime-database,Java,Android,Firebase Realtime Database,我有一个模型类,它的名称是(餐厅)我想添加餐厅的详细信息,如餐厅的地址和名称,并在Firebase存储中上载图像,在Firebase数据库中上载详细信息,然后我需要将图像URL作为文本添加到Firebase数据库中 //这里我正在上传图片 public void uploadImg() { if (filePath != null) { pd.show(); //for random name image
public void uploadImg() {
if (filePath != null) {
pd.show();
//for random name image
StorageReference childRef = storageRef.child(System.currentTimeMillis() + "_mas.jpg");
//uploading the image
UploadTask uploadTask = childRef.putFile(filePath);
uploadTask.addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
pd.dismiss();
Toast.makeText(getApplicationContext(), "Upload successful", Toast.LENGTH_SHORT).show();
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
pd.dismiss();
Toast.makeText(getApplicationContext(), "Upload Failed -> " + e, Toast.LENGTH_SHORT).show();
}
});
} else {
Toast.makeText(getApplicationContext(), "Select an image", Toast.LENGTH_SHORT).show();
}
}
public void uploadImg(){
if(filePath!=null){
pd.show();
//对于随机名称图像
StorageReference childRef=storageRef.child(System.currentTimeMillis()+“_mas.jpg”);
//上传图像
UploadTask UploadTask=childRef.putFile(文件路径);
uploadTask.addOnSuccessListener(新的OnSuccessListener(){
@凌驾
成功时公共无效(UploadTask.TaskSnapshot TaskSnapshot){
pd.解散();
Toast.makeText(getApplicationContext(),“上载成功”,Toast.LENGTH\u SHORT.show();
}
}).addOnFailureListener(新的OnFailureListener(){
@凌驾
public void onFailure(@NonNull异常e){
pd.解散();
Toast.makeText(getApplicationContext(),“上载失败->”+e,Toast.LENGTH\u SHORT.show();
}
});
}否则{
Toast.makeText(getApplicationContext(),“选择图像”,Toast.LENGTH\u SHORT.show();
}
}
上传完成后,在onSuccess
中,您必须像这样从Firebase存储获取下载url
childRef.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
// Got the download uri
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception exception) {
// Handle any errors
}
});
childRef.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
// Got the download uri
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception exception) {
// Handle any errors
}
});
dbRef.child("Res_imageURL").setValue(uri.toString())