在我选择图片并裁剪后,如何将我当前的用户个人资料图片更新到 Firebase 中?
这是我的代码:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == CropImage.PICK_IMAGE_CHOOSER_REQUEST_CODE && resultCode == RESULT_OK){
Uri imageUri = CropImage.getPickImageResultUri(getActivity(),data);
cropRequest(imageUri);
}
if (requestCode == CropImage.CROP_IMAGE_ACTIVITY_REQUEST_CODE){
CropImage.ActivityResult result = CropImage.getActivityResult(data);
if (resultCode == RESULT_OK){
try {
Bitmap bitmap = MediaStore.Images.Media.getBitmap(getActivity().getContentResolver(), result.getUri());
imgUserProfile.setImageBitmap(bitmap);
final ProgressDialog pd = new ProgressDialog(getContext());
pd.setMessage("Please wait ");
pd.show();
} catch (IOException e){
e.printStackTrace();
}
}
}
}
我如何从那里继续?有什么建议吗?
最佳答案
有很多选择:
- 我会使用的最有用的方法之一是将图片上传到
Firebase Storage
。上传它真的很容易,每当您的用户再次登录时,您都可以将文件下载到本地存储以供日常使用。 - 另一个选项(这有点笨拙)可能是将位图的像素数组存储在 firebase 节点中。它非常快,您可以将其存储在您的 firebase 数据库中,也可以存储在您的共享首选项中。通过使用额外的压缩功能,您甚至可以增强该功能。
不过,我建议使用 firebase 存储,因为它是唯一且安全的选择。所以去吧。对于 firebase 存储,请查看此链接,它是文档(很容易理解):
https://firebase.google.com/docs/storage/android/upload-files
还有这里:https://code.tutsplus.com/tutorials/image-upload-to-firebase-in-android-application--cms-29934
关于java - 选择图片并裁剪后如何将个人资料图片更新为 firebase?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57376528/