First some context of what I am trying to achieve -
I am developing an Image Sharing application for which I need the user to pick an image from the filesystem .
For this , I am using this code -
Intent photoPickerIntent = new Intent(Intent.ACTION_GET_CONTENT);
photoPickerIntent.setType("image/*");
startActivityForResult(photoPickerIntent, REQUEST_CODE_IMAGE_PICKER_INTENT);
Now , this triggers a chooser wherein I see multiple options including Gallery and a FileManager App that I have in my phone. If i select gallery and choose an image from there then my Activity receives an Intent with a content uri of an Image. But if I choose the FileManager App , I can choose any file which might not be an image . So , what I need is to be able to determine the mime type of the uri returned in the intent. The intent's getType method returns null .
Is there any way to determine the mime from the returned intent to be able to determine if the content is an image or not .
If this doesn't work this way , then I might have to use MimeTypeMap to determine the mime from the file extension.