В моем приложении я хотел бы открыть изображение и загрузить его в приложение с помощью диспетчера файлов. Я уже сделал это с использованием методов Intent.ACTION_GET_CONTENT
и onActivityResult()
. Все работает отлично, за исключением пути, который я получаю. Он находится в странном формате, и я не могу показать изображение в ImageView
Неверный путь к файлу изображения, полученный из файлового менеджера Android
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == SELECT_PICTURE) {
Uri selectedImageUri = data.getData();
mFileManagerString = selectedImageUri.getPath();
showPreviewDialog(mFileManagerString);
}
}
Здесь mFileManagerString = /document/image:19552
Когда я вызываю метод, чтобы показать изображение в ImageView
:
public void setPreviewIV(String pPath) {
Bitmap bmImg = BitmapFactory.decodeFile(pPath);
receiptPreviewIV.setImageBitmap(bmImg);
}
I получить следующую ошибку:
E/BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /document/image:19552: open failed: ENOENT (No such file or directory)
Как получить правильный путь к изображению, чтобы я мог показать его в ImageView
?