Я получаю изображение из галереи, используя намерение ACTION_PICK: -
Intent intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
intent.setType("image/*");
startActivityForResult(intent, 112);
и в onActivityResult() я получаю изображение с помощью getData()
, которое возвращает мне uri: - /external/images/media/6097
Теперь, когда я устанавливаю этот uri в изображении с помощью метода setImageUri()
изображения, изображение отображается, но когда я создаю файловый объект для загрузки этого изображения на сервер: -
File imageFile = new File(uri);
Пишет, что файл не существует. imageFile.exists()
возвращает ложь.
Я не знаю, где проблема. Я пробовал это на genymotion и на устройстве, но результат тот же. В манифесте я дал разрешения: -
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_INTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" />