Monday, 30 September 2013

Android Tutorial - Mengambil Gambar dari Kamera

Advertisement

Pada tutorial kali ini saya ingi share ilmu yang saya dapatkan selagi PKL. Yang ini cukup sederhana dan gampang. Yaitu bagaimana cara mengambil gambar lewat kamera, dan menampilkannya di aplikasi Android kita.
  1. Buat projek Android baru, seperti di bawah ini, selain dari itu tinggal next-next saja.
  2. New Project di Android
    New Project di Android
  3. Ketikkan kodingan berikut di file activity_main.xml






  4. Ubah MainActivity.java menjadi seperti ini
  5. package com.example.cameracapturemodule;

    import android.os.Bundle;
    import android.app.Activity;
    import android.content.Intent;
    import android.graphics.Bitmap;
    import android.view.Menu;
    import android.view.View;
    import android.widget.Button;
    import android.widget.ImageView;

    public class MainActivity extends Activity {

    ImageView image;
    Button buttonCamera;

    private static final int CAMERA_REQ = 1888;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    image = (ImageView)findViewById(R.id.image);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
    }

    public void GetImageCamera(View view) {
    //Jalankan suatu Activity untuk mengambil suatu Result

    Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
    startActivityForResult(cameraIntent, CAMERA_REQ);
    }


    @Override
    protected void onActivityResult(int reqCode, int resCode, Intent data){

    //Ketika kode hasil Activity-nya RESULT_OK (semua berjalan lancar),
    //dan ketika code yang me-request Activitynya adalah CAMERA_REQUEST,
    //Ambil data hasil Activity dan simpan sebagai bitmap
    //Kemudian tampilkan hasilnya di ImageView kita

    if (reqCode == CAMERA_REQ && resCode == RESULT_OK) {
    Bitmap bitmap = (Bitmap)data.getExtras().get("data");
    image.setImageBitmap(bitmap);
    }
    }
    }

  6. Tambahkan baris kodingan ini di AndroidManifest.xml

  7. Kodingan diatas artinya kita ingin menggunakan fitur kamera device Android kita (android:name="android.hardware.camera"). Tapi jika kamera tidak ada pada device, tidak apa-apa :) (android:required="false").
  8. Jalankan aplikasi kalian, dan hasilnya akan seperti ini. 

Image dari Camera Capture di Android
Image dari Camera Capture di Android

Bagaimana, gampang bukan mengambil gambar dari kamera dan menampilkannnya di aplikasi Android? Semoga bermanfaat ;)


EmoticonEmoticon