尝试将图像上传到 firebase 但失败
Trying to upload image into firebase but failed
我正在尝试将图像添加到 firebase 存储中,但每当尝试上传时每次都失败(每次运行其他部分 toast 消息“出现问题”)。我在这里添加代码...
private void uploadImage() {
pd.setMessage("Uploading...");
pd.show();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 50 ,baos);
byte[] finalimg = baos.toByteArray();
final StorageReference filePath;
filePath = storageReference.child("Notice").child(finalimg+"jpg");
final UploadTask uploadTask = filePath.putBytes(finalimg);
uploadTask.addOnCompleteListener(UploadNotice.this, new OnCompleteListener<UploadTask.TaskSnapshot>() {
@Override
public void onComplete(@NonNull Task<UploadTask.TaskSnapshot> task) {
if (task.isSuccessful()) {
uploadTask.addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
filePath.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
downloadUrl = String.valueOf(uri);
uploadData();
}
});
}
});
}else {
pd.dismiss();
Toast.makeText(UploadNotice.this, "Something went wrong", Toast.LENGTH_SHORT).show();
}
}
});
}
谁能告诉我我的代码有什么问题? 我该如何解决?
我猜你在 jpg
扩展名之前遗漏了 .
。
child
参数需要是 String
,您正在将 byte[]
与 String
.
连接起来
无论如何,如果您需要知道错误是什么:
uploadTask.addOnFailureListener(exception -> Log.e("error", exception.getMessage());
我正在尝试将图像添加到 firebase 存储中,但每当尝试上传时每次都失败(每次运行其他部分 toast 消息“出现问题”)。我在这里添加代码...
private void uploadImage() {
pd.setMessage("Uploading...");
pd.show();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 50 ,baos);
byte[] finalimg = baos.toByteArray();
final StorageReference filePath;
filePath = storageReference.child("Notice").child(finalimg+"jpg");
final UploadTask uploadTask = filePath.putBytes(finalimg);
uploadTask.addOnCompleteListener(UploadNotice.this, new OnCompleteListener<UploadTask.TaskSnapshot>() {
@Override
public void onComplete(@NonNull Task<UploadTask.TaskSnapshot> task) {
if (task.isSuccessful()) {
uploadTask.addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
filePath.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
downloadUrl = String.valueOf(uri);
uploadData();
}
});
}
});
}else {
pd.dismiss();
Toast.makeText(UploadNotice.this, "Something went wrong", Toast.LENGTH_SHORT).show();
}
}
});
}
谁能告诉我我的代码有什么问题? 我该如何解决?
我猜你在 jpg
扩展名之前遗漏了 .
。
child
参数需要是 String
,您正在将 byte[]
与 String
.
无论如何,如果您需要知道错误是什么:
uploadTask.addOnFailureListener(exception -> Log.e("error", exception.getMessage());