我有一个活动,我给用户一个选项来点击相机中的图像,然后我将这个图像存储在一个字节数组和数据库中。
问题 - 但是在创建缩略图时,我的代码似乎无法在Samsung Galaxy S4上运行。下面是代码:
private void selectImage() {
final CharSequence[] items = {"Take Photo", "Choose from Library",
"Cancel"};
AlertDialog.Builder builder = new AlertDialog.Builder(FeedbackActivity.this);
builder.setTitle("Add Photo!");
builder.setItems(items, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int item) {
if (items[item].equals("Take Photo")) {
String BX1 = android.os.Build.MANUFACTURER;
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, REQUEST_CAMERA);
} else if (items[item].equals("Choose from Library")) {
Intent intent = new Intent(
Intent.ACTION_PICK,
MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
intent.setType("image/*");
startActivityForResult(
Intent.createChooser(intent, "Select File"),
SELECT_FILE);
} else if (items[item].equals("Cancel")) {
dialog.dismiss();
}
}
});
builder.show();
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUEST_VIDEO_CAPTURED) {
if (resultCode == RESULT_OK) {
onCaptureVideoResult(data);
}
} else if (resultCode == Activity.RESULT_OK) {
if (requestCode == SELECT_FILE) {
onSelectFromGalleryResult(data);
} else if (requestCode == REQUEST_CAMERA) {
onCaptureImageResult(data);
}
}
}
答案 0 :(得分:0)
您需要按照此post
中的说明执行不同的方法在调用相机应用程序时,您需要使用
指定路径intent.PutExtra(MediaStore.ExtraOutput,Uri.FromFile(App._file));
顺便说一下,拍摄的图像将保存到上面的位置 在onActivityResult方法中,您可以访问同一文件并进行进一步处理。
希望这会有所帮助。