gpt4 book ai didi

android - 如何获取所有设备的图像路径 Uri 和 Crop

转载 作者:搜寻专家 更新时间:2023-11-01 08:09:25 24 4
gpt4 key购买 nike

我有一个主要项目,它从某些来源获取图像(返回 Uri)。下一步是按比例裁剪图像(触摸输入)。我最近发现一些手机制造商乱搞 android 基类,所以:

com.android.camera.action.crop 

并不总是存在。

所以我找到了一个进行裁剪的库:https://github.com/lvillani/android-cropimage我已将该库添加到我的 eclipse 构建路径和项目库中。

我的问题是,我可以这样打开库吗:

    Intent intent = new Intent("com.android.camera.action.CROP");  
//intent.setClassName("com.android.camera", "com.android.camera.CropImage");
intent.setDataAndType(uri, "image/*");
intent.putExtra("crop", "true");
intent.putExtra("output", Uri);
intent.putExtra("outputFormat", "JPEG");
startActivityForResult(intent, 1);

然后检索裁剪后的图像,还是我必须做一些额外的事情?

  1. 另一个问题:当我将应用转换市场时,这也会影响我的应用(用户是否需要下载或接受额外库的许可?

我想确保我的应用适用于所有应用,这是最好的方法吗?或者有什么更好的方法,请说明。 (同时保持简单,对 Android 开发人员来说相当新!谢谢!)

最佳答案

我安装了这个库并确保它链接到我的项目并且在构建路径中,然后我简单地做了:

打开文件管理器:

        Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent,"Select Picture"), PICK_FROM_FILE);

或者如果你想从相机捕捉

        Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra("return-data", true);
startActivityForResult(intent, GET_IMAGE_FROM_CAMERA);

然后裁剪图片:

    Intent intent = new Intent(this, com.android.camera.CropImage.class);
intent.setData(uri);
intent.putExtra("return-data", true);
startActivityForResult(intent, CROP);

我已经在一些设备上对此进行了测试,它运行良好且非常棒。也适用于相机。

关于android - 如何获取所有设备的图像路径 Uri 和 Crop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11342056/

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