Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android Camera for Picture and Video

Tags:

android

camera

I want to start camera activity in my android app and I know how to do that. I want to ask when the camera activity finishes, how can I check as if it was the picture or the video taken by the user?

UPDATED

I have a dialog where it asks 2 things.

  1. New Photo or Video
  2. Existing Photo or Video

If it's no. 1, it means camera will be started and user can either take a picture or the video and it will return to the activity.

If it's no.2, it mean gallery will be started having pictures and videos for a user to select one and will return back to the activity.

like image 630
Umair A. Avatar asked Nov 05 '22 16:11

Umair A.


1 Answers

Hello Umair, I have done this type of application I searched many time but I didn't get any proper solution so I changed your my menu & they are now 1)Take New Photo 2)Take New Video 3)Existing Image/Video

Process will be like this 1)I use an global variable 2)So when user click on menu one I sets global variable value to 1 3) Start the activity for result like below

try{
   System.gc();
   String fileName = System.currentTimeMillis()+".jpg";
   String mPathImage = Environment.getExternalStorageDirectory()+ "/" + fileName;
   File file = new File(mPathImage);
   Uri outputFileUri = Uri.fromFile( file );
   Intent mIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
   mIntent.putExtra( MediaStore.EXTRA_OUTPUT, outputFileUri );
   startActivityForResult(mIntent, 1);
   mValue=1;

}catch(Exception e){

}

If User click on menu 2 I change value of global variable to 2 & starts the activity for result like below.

try {
    System.gc();
    Intent intent = new Intent(android.provider.MediaStore.ACTION_VIDEO_CAPTURE);
    startActivityForResult(intent, 1);
    mValue=2;
}catch(Exception e){}

If user click on 3rd menu I set value to 3 & start the activity for result like below.

try{
   System.gc();
   Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
   intent.setType("*/*");
   startActivityForResult(intent,1);
   mValue=3;
}catch(Exception e){}
}

This will show all the images & video's in mobile

Then finally when activity gets closed use global variable to check whether user want to new image or video or existing image/video.

Hope this will help you..

like image 155
Sandip Jadhav Avatar answered Nov 11 '22 09:11

Sandip Jadhav