我只是有一个将图像上传到firebase的功能:
public async void SaveImage(Stream stream)
{
var task = new FirebaseStorage("XXXXXXXXXXX.appspot.com")
.Child("images")
.Child("users")
.Child("name.JPG")
.PutAsync(stream);
}
onActivityResult我获取流并调用saveImage:
protected override void OnActivityResult(int requestCode, [GeneratedEnum] Result resultCode, Intent data)
{
base.OnActivityResult(requestCode, resultCode, data);
if ((requestCode == PICK_FROM_GALLERY) && (resultCode == Result.Ok) && (data != null))
{
try
{
Bitmap bitmap = MediaStore.Images.Media.GetBitmap(this.ContentResolver, data.Data);
using (MemoryStream stream = new MemoryStream())
{
bitmap.Compress(Bitmap.CompressFormat.Jpeg, 10, stream);
SaveImage(stream);
}
}
catch (Java.IO.IOException e)
{
//Exception Handling
}
}
}
因此它尝试将图像保存到firebase,但成功保存图像的大小为0B。那么有没有人知道为什么保存的图像实际上没有保存图像数据?谢谢你的帮助。