-6

I want to fetch only front camera captured images.

Is there any intent or media function which give me all images path whose captured by front camera (selfie camera)

Thanks in advance.

Zoe
  • 27,060
  • 21
  • 118
  • 148
Jatinkumar Patel
  • 1,094
  • 2
  • 17
  • 34

2 Answers2

1

Is there any intent or media function which give me all images path whose captured by front camera (selfie camera)

No.

CommonsWare
  • 986,068
  • 189
  • 2,389
  • 2,491
1

While there is no a straightforward way to do it, you can possibly get the exif metadata for each picture in your DCIM folder and then check if the TAG_MODEL (or any other characteristic) matches your front camera's specification.

Sample code to get the exif metadata from an image file (source):

public class AndroidExif extends Activity {

 TextView myTextView;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        myTextView = (TextView)findViewById(R.id.textview);

        //change with the filename & location of your photo file
        String filename = "/sdcard/DSC_3509.JPG";
        try {
   ExifInterface exif = new ExifInterface(filename);
   ShowExif(exif);
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
   Toast.makeText(this, "Error!", 
     Toast.LENGTH_LONG).show();
  }
    }

    private void ShowExif(ExifInterface exif)
    {
     String myAttribute="Exif information ---\n";
     myAttribute += getTagString(ExifInterface.TAG_DATETIME, exif);
     myAttribute += getTagString(ExifInterface.TAG_FLASH, exif);
     myAttribute += getTagString(ExifInterface.TAG_GPS_LATITUDE, exif);
     myAttribute += getTagString(ExifInterface.TAG_GPS_LATITUDE_REF, exif);
     myAttribute += getTagString(ExifInterface.TAG_GPS_LONGITUDE, exif);
     myAttribute += getTagString(ExifInterface.TAG_GPS_LONGITUDE_REF, exif);
     myAttribute += getTagString(ExifInterface.TAG_IMAGE_LENGTH, exif);
     myAttribute += getTagString(ExifInterface.TAG_IMAGE_WIDTH, exif);
     myAttribute += getTagString(ExifInterface.TAG_MAKE, exif);
     myAttribute += getTagString(ExifInterface.TAG_MODEL, exif);
     myAttribute += getTagString(ExifInterface.TAG_ORIENTATION, exif);
     myAttribute += getTagString(ExifInterface.TAG_WHITE_BALANCE, exif);
     myTextView.setText(myAttribute);
    }

    private String getTagString(String tag, ExifInterface exif)
    {
     return(tag + " : " + exif.getAttribute(tag) + "\n");
    }
}
pleft
  • 7,567
  • 2
  • 21
  • 45