我一直在试图找出为什么我的 onActivityResult 方法没有被调用。我正在尝试从 Fragment 启动相机,拍照并返回图片数据,以便我可以将其转换为 Base64 字符串并保存到数据库。
我在片段的 onCreateView 方法中定义了以下内容
takePhotoActivityResultLauncher = registerForActivityResult(
new ActivityResultContracts.StartActivityForResult(),
new ActivityResultCallback<ActivityResult>() {
@Override
public void onActivityResult(ActivityResult result) {
Log.d("TAG","WHY CANT I GET HERE!!");
}
});
...我正在使用此代码来启动意图
Intent pictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
takePhotoActivityResultLauncher.launch(pictureIntent);
谁能指出我到底做错了什么?我可以从相机中拍摄照片,但是当它返回到片段时,我在 onActivityResult 的 Logcat 中没有得到任何内容,并且日志中也没有错误。