So I am making an app that lets users pick images from their gallery to display, as well as take photos from the camera.
The image is previewed via a bitmap that takes the string of the file path. When the user takes a photo the code below handles it (and works):
String path = mediaStorageDir.getPath() + File.separator + "IMG_"+ timeStamp + ".jpg"
File pictureFile = new File(path);
Bitmap bitmap = BitmapFactory.decodeFile(pictureFile.getAbsolutePath());
image1.setImageBitmap(bitmap);
The path is of the format like this:
/storage/emulated/0/Pictures/App/IMG_20150512_130719.jpg
However when I try to select from my library, my code is setup so that the string I am returning formatted like this:
file:////storage/emulated/0/Pictures/App/IMG_20150512_130719.jpg
Now obviously I can (and currently am) split the string and get the path to match the above, but I am curious if there is a standard way to convert between these to?
I saw Uri.parse() but that doesn't work because that returns a URI and I want a String that I can make a file from and then get the absolute path.
If you have a clean suggestion on how I can move from the file://// string to the / string I'm all ears.
Thanks