FileNotFoundException при выборе изображения из галереи
Я создаю приложение для Android с кнопкой, и когда пользователь нажимает на нее, он должен выбрать изображение из галереи или камеры, которое будет отправлено на мой сервер. Но когда я пытаюсь проверить это в эмуляторе, при отправке я обнаружил следующую ошибку:
12-30 17:44:14.435: W/System.err(4216): java.io.FileNotFoundException:
/content:/com.android.providers.media.documents/document/image%3A14: open failed: ENOENT
(No such file or directory)
Ошибка есть:
FileBody cbFile = new FileBody(this.image, "image/*");
А также this.image
это изображение, которое было выбрано из галереи.
1 ответ
Я сделал нечто похожее на это в одном из моих приложений. Попробуйте это, чтобы увидеть, если это работает.
Это код, чтобы открыть галерею, чтобы выбрать изображение...
Intent intent = new Intent();
intent.setType("image/jpg");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(
Intent.createChooser(intent, "Select Picture"),
SELECT_PICTURE);
Убедитесь, что в вашем классе есть следующий метод, потому что он вызывается после завершения действия галереи...
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
selectedImageUri = data.getData();
try {
Bitmap selectedImage = MediaStore.Images.Media.getBitmap(
this.getContentResolver(), selectedImageUri);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
теперь вы можете делать все, что вы хотите, с помощью Bitmap selectedImage