android codes for using Inbuild camera

Hey guys the link below will allow you to down these code
Download the camera codes here!!!
You need to first create Xml with button capture and image view
Alternativly you need to copy and paste the codes
You also need to configure camera hadware in the manifest


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:baselineAligned="false"
    android:orientation="vertical"
    tools:context=".MainActivity" >

    <!-- Capture picture button -->

    <Button
        android:id="@+id/btnCapturePicture"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="10dp"
        android:onClick="pictures"
        android:text="Take a Picture" />
    <!-- Record video button -->

    <Button
        android:id="@+id/btnRecordVideo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Record a Video" />

    <TextView
        android:layout_width="265dp"
        android:layout_height="90dp"
        android:padding="10dp"
        android:text="Preview"
        android:textSize="15dp" />
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical" >
        <!-- To display picture taken -->
        <ImageView
            android:id="@+id/imgPreview"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:visibility="gone" />
        <!-- To preview video recorded -->
        <VideoView
            android:id="@+id/videoPreview"
            android:layout_width="wrap_content"
            android:layout_height="400dp"
            android:visibility="gone" />
    </LinearLayout>

</LinearLayout>
 






public class MainActivity extends Activity {
      // Activity request codes
    private static final int CAMERA_CAPTURE_IMAGE_REQUEST_CODE = 100;
    private static final int CAMERA_CAPTURE_VIDEO_REQUEST_CODE = 200;
    public static final int MEDIA_TYPE_IMAGE = 1;
    public static final int MEDIA_TYPE_VIDEO = 2;
    // directory name to store captured images and videos
    private static final String IMAGE_DIRECTORY_NAME = "Mugisha";
    private Uri fileUri; // file url to store image/video
    private ImageView imgPreview;
   // private VideoView videoPreview;
   // private Button btnCapturePicture, btnRecordVideo;
      @Override
      protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
             imgPreview = (ImageView) findViewById(R.id.imgPreview);
      }
public void pictures(View v)
{
        // capture picture
    if( isDeviceSupportCamera()==true){
        captureImage();
    } else{
Toast.makeText(getApplicationContext(),"Phone Does not have a Camera", Toast.LENGTH_LONG).show();
    }

}
/*
 * Capturing Camera Image will lauch camera app requrest image capture
 */
private void captureImage() {
      /*
       * *Standard Intent action that can be sent to have the camera
       * application capture an image and return it. ACTION_IMAGE_CAPTURE
       */
    Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
  fileUri = getOutputMediaFileUri1(MEDIA_TYPE_IMAGE);
   intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);
    // start the image capture Intent
    startActivityForResult(intent, CAMERA_CAPTURE_IMAGE_REQUEST_CODE);
}

/**
 * Receiving activity result method will be called after closing the camera
 * */
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    // if the result is capturing Image
      if (requestCode == CAMERA_CAPTURE_IMAGE_REQUEST_CODE) {
        if (resultCode == RESULT_OK) {
            // Image captured and saved to fileUri specified in the Intent
             Toast.makeText(getApplicationContext(), "image saved successfully",Toast.LENGTH_SHORT).show();
            previewCapturedImage();
             
        } else if (resultCode == RESULT_CANCELED) {
             Toast.makeText(getApplicationContext(),"User cancelled Image Capture recording",Toast.LENGTH_SHORT).show();
        } else {
            // failed to capture image
            Toast.makeText(getApplicationContext(),"Sorry! Failed to capture image", Toast.LENGTH_SHORT).show();
            // Image capture failed, advise user
        }
    }
}
/*
 * Display image from a path to ImageView
 */
private void previewCapturedImage() {
    try {
        // hide video preview
       // videoPreview.setVisibility(View.GONE);

        imgPreview.setVisibility(View.VISIBLE);

        // bimatp factory
        BitmapFactory.Options options = new BitmapFactory.Options();

        // downsizing image as it throws OutOfMemory Exception for larger
        // images
        options.inSampleSize = 8;

        final Bitmap bitmap = BitmapFactory.decodeFile(fileUri.getPath(), options);
        imgPreview.setImageBitmap(bitmap);
    } catch (NullPointerException e) {
        e.printStackTrace();
    }
}
/**
 * Creating file uri to store image/video
 */
public Uri getOutputMediaFileUri1(int type) {
    return Uri.fromFile(getOutputMediaFile1(type));
}

/*
 * returning image / video
 */
private static File getOutputMediaFile1(int type) {

    // External sdcard location
    File mediaStorageDir = new File(
            Environment
                    .getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES),
            IMAGE_DIRECTORY_NAME);

    // Create the storage directory if it does not exist
    if (!mediaStorageDir.exists()) {
        if (!mediaStorageDir.mkdirs()) {
            Log.d(IMAGE_DIRECTORY_NAME, "Oops! Failed create "
                    + IMAGE_DIRECTORY_NAME + " directory");
            return null;
        }
    }

    // Create a media file name
    String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss",
            Locale.getDefault()).format(new Date());
    File mediaFile;
    if (type == MEDIA_TYPE_IMAGE) {
        mediaFile = new File(mediaStorageDir.getPath() + File.separator
                + "IMG_" + timeStamp + ".jpg");
    } else if (type == MEDIA_TYPE_VIDEO) {
        mediaFile = new File(mediaStorageDir.getPath() + File.separator
                + "VID_" + timeStamp + ".mp4");
    } else {
        return null;
    }

    return mediaFile;
}

/**
 * Creating file uri to store image/video
 */
public Uri getOutputMediaFileUri(int type) {
    return Uri.fromFile(getOutputMediaFile1(type));
}
/**
 * Checking device has camera hardware or not
 * */
private boolean isDeviceSupportCamera() {
    if (getApplicationContext().getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA)) {
        // this device has a camera
        return true;
    } else {
        // no camera on this device
        return false;
    }
}   
     
}

 
Share on Google Plus

About Unknown

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.
    Blogger Comment

2 comments:

  1. thanks alot it of help to me

    ReplyDelete
  2. thanks alot this was of good help to me

    ReplyDelete