千家信息网

Android系统开发照片裁剪加载失败的原因有哪些

发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,本篇内容介绍了"Android系统开发照片裁剪加载失败的原因有哪些"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能
千家信息网最后更新 2025年01月31日Android系统开发照片裁剪加载失败的原因有哪些

本篇内容介绍了"Android系统开发照片裁剪加载失败的原因有哪些"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

原因一:

没有获取相机权限,调起相机失败;

   if (ContextCompat.checkSelfPermission(baseActivity, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED){            // 进入这儿表示没有权限            if (ActivityCompat.shouldShowRequestPermissionRationale(baseActivity, Manifest.permission.CAMERA)) {                // 提示已经禁止//                ToastUtil.longToast(mContext, getString(R.string.you_have_cut_down_the_permission));            } else {                ActivityCompat.requestPermissions(baseActivity, new String[]{Manifest.permission.CAMERA}, 100);            }        }

原因二:

Android7.0版本:没做适配

原因三:

以上都完成的情况下,拍照成功以后调起裁剪的时候 ,拿不到照片,显示加载失败。

这时候你可以看看自己的代码中有没有申请存储权限,这权限很容易疏忽导致一直拿不到图片,往往在相机回调的情况下intent返回拿到的又是空值,就容易在这纠结。其实相机回调一些手机intent值本就是返回空值null,所以我们都是通过路径拿到之前你拍成功的图片。

//获取存储权限            if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) {                if (ActivityCompat.checkSelfPermission(baseActivity, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {                    if (ActivityCompat.shouldShowRequestPermissionRationale(baseActivity, Manifest.permission.WRITE_EXTERNAL_STORAGE)) {                        // 提示已经禁止                    } else {                        ActivityCompat.requestPermissions(baseActivity, PERMISSIONS_STORAGE, REQUEST_PERMISSION_CODE);                    }                } else {                    Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);                    if (takePictureIntent.resolveActivity(baseActivity.getPackageManager()) != null) {                        Uri fileUri = FileProvider7.getUriForFile(baseActivity, file);                        takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);                        baseActivity.startActivityForResult(takePictureIntent, TAKE_PICTURE);                    }                }            } else {                Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);                if (takePictureIntent.resolveActivity(baseActivity.getPackageManager()) != null) {                    Uri fileUri = FileProvider7.getUriForFile(baseActivity, file);                    takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);                    baseActivity.startActivityForResult(takePictureIntent, TAKE_PICTURE);                }            }        }

"Android系统开发照片裁剪加载失败的原因有哪些"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

0