Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Android – 从我刚拍摄的图片中获取URI(不再保存图像)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
对于像我这样的问题,我找到了很多答案但是对我来说没有意义.让我解释.

我有一个ImageButton,让用户拍照并在界面上显示它.当我尝试获取图像URI时,它返回null:

Uri uri = data.getData();

我在互联网上进行了一些搜索,找到了类似的解决方案:

@Override
public void onActivityResult(int requestCode,int resultCode,Intent data) {
    try {
        if (resultCode == Activity.RESULT_OK) {
            updateProfilePicure = Boolean.TRUE;
            switch(requestCodE){
                case 0:
                    Bundle extras = data.getExtras();
                    Object xx = data.getData();
                    Bitmap imageBitmap = (Bitmap) extras.get("data");
                    Uri tempUri = getImageUri(imageBitmap);
                    imageView.setImageBitmap(imageBitmap);
                    break;
                default: break;
            }
        }
    } catch(Exception E){
        e.printStackTrace();
    }
}

public Uri getImageUri(Bitmap inImagE) {
    ByteArrayOutputStream bytes = new ByteArrayOutputStream();
    inImage.compress(Bitmap.CompressFormat.JPEG,100,bytes);
    String path = MediaStore.Images.Media.insertImage(
            ApplicationContext.geTinstance().getContext().getContentResolver(),inImage,"title",null);
    return Uri.parse(path);
}

对我来说,它没有意义,因为当调用转到方法onActivityResult()时,图片已经保存在DCIM文件夹中,并且没有任何理由再次保存它.那我为什么要用呢?

是否有可能找到另一种从捕获的图像中检索URI的方法

提前致谢.

解决方法

不必要.引用the documentation for ACTION_IMAGE_CAPTURE

(这里的“额外字段”是一个额外键入的数据)

您粘贴的代码段是额外检索数据,因此图像不会存储在任何位置.

您已经在第一个代码段中拥有了此代码 – 如果您在ACTION_IMAGE_CAPTURE请求中将uri指定为EXTRA_OUTPUT,您将获得一个Uri回到在Intent中传递给onActivityResult()的图像.

大佬总结

以上是大佬教程为你收集整理的Android – 从我刚拍摄的图片中获取URI(不再保存图像)全部内容,希望文章能够帮你解决Android – 从我刚拍摄的图片中获取URI(不再保存图像)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。