java - 为什么在我的方法 onActivityResult 中它没有达到 else if 条件。我想使用 UCrop 将裁剪后的图像保存到 Firebase
问题描述
为什么在我的方法 onActivityResult 中它没有达到 else if 条件。我想使用 UCrop 将裁剪后的图像保存到 Firebase
Uri imageUriResuktCrop;
@Override
public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK && requestCode == CODE_IMG_GALLERY) {
imageUri = data.getData();
if (imageUri != null) {
startCrop(imageUri);
}
} else if (resultCode == RESULT_OK && requestCode == UCrop.REQUEST_CROP ) {
imageUriResuktCrop = UCrop.getOutput(data);
if (imageUriResuktCrop != null) {
img.setImageURI(imageUriResuktCrop);
}
}
if (!currentImg.toString().equals("")) {
StorageReference delRef = FirebaseStorage.getInstance().getReferenceFromUrl(currentImg.toString());
delRef.delete().addOnSuccessListener(new OnSuccessListener<Void>() {
@Override
public void onSuccess(Void aVoid) {
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
}
});
}
StorageReference mStorageRef = FirebaseStorage.getInstance().getReference("uploads").child("gallery");
fileRef = mStorageRef.child(FirebaseAuth.getInstance().getCurrentUser().getUid()).child(System.currentTimeMillis() + "." + getFileExtension(imageUriResuktCrop));
StorageTask mUploadTask = fileRef.putFile(imageUriResuktCrop)
.addOnSuccessListener((OnSuccessListener<UploadTask.TaskSnapshot>) taskSnapshot -> {
fileRef.getDownloadUrl().addOnSuccessListener(uri -> {
//code here
}
解决方案
结果发送活动尚未将结果设置为等于 RESULT_OK。删除检查以验证结果
推荐阅读
- angular - 响应式 Ag-Grid
- javascript - Socket io 延迟一个事件
- django - ManyToMany django 字段不起作用,在 POST 请求中没有接受任何输入?
- swift - 如何通过swift macos将辅助字符串与主字符串分开?
- mariadb - 如何解决 MariaBD 自动递增密钥问题
- flutter - 带有 Type 对象的 Dart 提要模板/通用类,可能吗?
- ios - 如何在swift中应用属性字符串不同的行间距
- php - 如何使用 PHP 从 JSON 响应中的列表中提取特定值?
- c# - 以编程方式压缩文件,如本机发送到压缩的 zip 文件夹
- powerbi - 将 Defender for Endpoint ATP 指标导出到 Power BI