gpt4 book ai didi

java - 从谷歌照片中选择照片会破坏我的应用程序

转载 作者:行者123 更新时间:2023-11-30 05:05:02 24 4
gpt4 key购买 nike

我正在用 java 编写一个 android 应用程序,需要让我的用户从图库中选择和裁剪图像。从任何原生图库中选择图片都没有问题,但当用户选择裁剪或从 google photos 应用中选择图片时,应用就会崩溃。

我无法弄清楚问题的根源是什么,所以任何答案都会有帮助

这是我正在使用的代码
类字段:

private Uri imageUri;

打开相机:

private void camOpen() {
Intent i = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
File f = new File(Environment.getExternalStorageDirectory(), "file" + String.valueOf(System.currentTimeMillis()) + ".png");
StrictMode.VmPolicy.Builder builder = new StrictMode.VmPolicy.Builder();
StrictMode.setVmPolicy(builder.build());

imageUri = Uri.fromFile(f);
i.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
i.putExtra("return-data", true);
startActivityForResult(i, CAMERA_CODE);
}

打开画廊:

private void galleryOpen() {
Intent i = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(Intent.createChooser(i, "select file"), SELECT_PHOTO_CODE);
}

裁剪图片:

private void cropImage() {
try {
Intent cropIntent = new Intent("com.android.camera.action.CROP");
cropIntent.setDataAndType(imageUri, "image/*");
cropIntent.putExtra("crop", true);
cropIntent.putExtra("aspectX", 1);
cropIntent.putExtra("aspectY", 1);
cropIntent.putExtra("return-data", true);
startActivityForResult(cropIntent, CROP_CODE);

} catch (Exception e) {}
}

结果处理程序:

@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);

if (requestCode == CAMERA_CODE && resultCode == Activity.RESULT_OK) {
cropImage();
} else if (requestCode == SELECT_PHOTO_CODE && resultCode == Activity.RESULT_OK) {
if (data != null) {
imageUri = data.getData();
cropImage();
}
} else if (requestCode == CROP_CODE && resultCode == Activity.RESULT_OK) {
Bundle bundle = data.getExtras();
Bitmap b = bundle.getParcelable("data");
hasImageChanged=true;
ivProfilePic.setImageBitmap(b);
capturedImage = b;
}
}

感谢您提供任何有用的帮助...

最佳答案

Android 不支持裁剪 Intent ,因为裁剪不是 android api 的一部分。 So i recommend you for Using library

关于java - 从谷歌照片中选择照片会破坏我的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54727323/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com