Я хочу получить захваченное изображение с камеры ...
Мой код работает на всех устройствах Android 4
до Android 6.x
Но на Android 7.0
У меня есть некоторые проблемы с получением URI
, и я решил эту проблему с здесь
Мой код для решения проблемы URI
:
Intent showCameraIntent=new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
File file=new File(Environment.getExternalStorageDirectory(),"file"+ String.valueOf(System.currentTimeMillis()+".jpg"));
if(Build.VERSION.SDK_INT>=24){
uri= FileProvider.getUriForFile(NewAdActivity.this,"com.example.alirezarm.sheypoor.provider",file);
}else{
uri=Uri.fromFile(file);
}
showCameraIntent.putExtra(MediaStore.EXTRA_OUTPUT,uri);
showCameraIntent.putExtra("return-data",true);
startActivityForResult(showCameraIntent, 1002);
Но когда я хочу обрезать захваченное изображение, с этим кодом:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(requestCode==1002&&resultCode==RESULT_OK){
CropImage.activity(uri).setAspectRatio(1, 1).setRequestedSize(512, 512).start(this);
}else if(requestCode== CropImage.CROP_IMAGE_ACTIVITY_REQUEST_CODE){
String TAG="CropImage";
CropImage.ActivityResult result=CropImage.getActivityResult(data);
if(resultCode==RESULT_OK) {
Uri resultUri = result.getUri();
imageViews.get(currentImageView).setImageURI(resultUri);
isImageSelected[currentImageView] = true;
}else if(resultCode==CropImage.CROP_IMAGE_ACTIVITY_RESULT_ERROR_CODE){
Exception error=result.getError();
Log.e(TAG, "onActivityResult: ",error );
}
}
}
Я получил ошибку из библиотеки CropImage
error = "Не удалось загрузить выборочное растровое изображение: content: //com.example.alirezarm.sheypoor.provider/external_files/file1561746047446.jpg
Данный файл или каталог отсутствует")
а также код результата 204 !!!!
как я могу это исправить ??