ArthurHub / Android-Image-Cropper

Image Cropping Library for Android, optimized for Camera / Gallery.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

how to save in my xyz folder?

sahujaunpuri opened this issue · comments

After cropping the image, it saves it to "file:///data/user/0/package name/cache/croppedXYZ.jpg.

I want to save it in a folder named Environment.getExternalStorageDirectory() + File.separator +getString(R.string.app_name)+"/"+ folder_name +"/"fileNmae.jpg

please guide me

Hi,

Please try this:

//1. Create folder inside your app. Let's call it "folder_name":
File mPhotoStorageFolder = getExternalFilesDir("folder_name");

//2. path and name for your target cropped file:
String path = mPhotoStorageFolder + "/fileNmae" + ".jpg";
Uri mUriPath = Uri.parse(path);

//3. create below method for different schemes. You will use it soon:
private Uri getRealUri(Uri sourceUri){
Uri mRealUri = null;
if (sourceUri.getScheme() == null){
mRealUri = Uri.fromFile(new File(Objects.requireNonNull(sourceUri.getPath())));
}else{
mRealUri = sourceUri;
}
return mRealUri;
}

//4. Then set it in the cropper's setOutputUri. You will use the above method here.
CropImage.activity(imageUri)
.setOutputUri(getRealUri(mUriPath))
.start(this);

//5. That's it! you can check the path on the cropped image in onActivityResult like this:

CropImage.ActivityResult result = CropImage.getActivityResult(data);
String CroppedFilePath = result.getUri().getPath();

Hope this helps.