问题描述:A页面有个按钮,选择图库照片裁剪,然后显示出来,一个简单的功能,在一个小米9的手机上报错。裁剪照片一直提示:"保存时发生错误,保存失败"。
问题分析:首先这个提示是系统给出的,所以是我们给系统一个错误的信息,导致系统给出了这样的提示。选择图片这一步肯定是没有错的,因为这一步我们没有给系统任何数据,应该裁剪图片时候出错了,因为在这一步,我们需要给一个裁剪的以后应该保存的路径,裁剪的代码为:
crop(data.getData(), getOutCropUri());
private Uri getOutCropUri() {
Debug.i(TAG, "preCroppedPath:" + preCroppedPath);
File outFile = new File(preCroppedPath);
File parentFile = outFile.getParentFile();
if (parentFile != null) {
if (!parentFile.exists()) {
Debug.i(TAG, "getOutCropUri :parent: is not exists");
parentFile.mkdirs();
}
}
return Uri.fromFile(outFile);
}
private void crop(Uri inUri, Uri outUri) {
if (inUri &#