Belajar Android itu menyenangkan. Dulu pernah kepikiran bisa nggak kita buat aplikasi yang bisa memanfaatkan camera untuk foto lalu fotonya tampil diaplikasi kita dan bisa kita kirim ke server. Biasalah step pertama cari tutorial android camera di google. Dan hasilnya banyak referensi-referensi tutorial yang bisa kita pelajari. Diantaranya adalah ini https://inducesmile.com/android/display-captured-photo-in-imageview-using-android-camera-application/
Kita tinggal ikuti langkah-langkahnya.
1. Buat project baru dengan isi Application Name dengan LearnAndroidCamera dan company domain dengan net.agusharyanto . Lalu klik Next terus sampai Finish
2. Kita siapkan Layoutnya, untuk edit activity_main.xml lalu ketikan kode berikut.
01 |
|
02 |
< RelativeLayout xmlns:android = "http://schemas.android.com/apk/res/android" |
03 |
xmlns:tools = "http://schemas.android.com/tools" |
04 |
android:id = "@+id/activity_main" |
05 |
android:layout_width = "match_parent" |
06 |
android:layout_height = "match_parent" |
07 |
android:paddingBottom = "@dimen/activity_vertical_margin" |
08 |
android:paddingLeft = "@dimen/activity_horizontal_margin" |
09 |
android:paddingRight = "@dimen/activity_horizontal_margin" |
10 |
android:paddingTop = "@dimen/activity_vertical_margin" |
11 |
tools:context = "net.agusharyanto.learnandroidcamera.MainActivity" > |
12 |
< Button |
13 |
android:layout_width = "wrap_content" |
14 |
android:layout_height = "wrap_content" |
15 |
android:text = "Take Picture" |
16 |
android:id = "@+id/take_picture" |
17 |
android:layout_alignParentBottom = "true" |
18 |
android:layout_centerHorizontal = "true" /> |
19 |
< ImageView |
20 |
android:layout_width = "match_parent" |
21 |
android:layout_height = "match_parent" |
22 |
android:id = "@+id/captured_photo" |
23 |
android:layout_above = "@id/take_picture" |
24 |
android:layout_alignParentTop = "true" |
25 |
android:layout_alignParentLeft = "true" |
26 |
android:contentDescription = "captured image" |
27 |
android:layout_alignParentStart = "true" /> |
28 |
|
Pada layout diatas kita siapkan satu imageview untuk menampilkan gambar hasil dari foto camera dan satu button untuk mengaktifkan pengambilan gambar lewat camera.
3. Sekarang mari kita ke otak aplikasinya dengan mengedit MainActiviy.java lalu ketikan kode berikut.
01 |
package net.agusharyanto.learnandroidcamera; |
02 |
03 |
import android.content.Intent; |
04 |
import android.graphics.Bitmap; |
05 |
import android.os.Bundle; |
06 |
import android.provider.MediaStore; |
07 |
import android.support.v7.app.AppCompatActivity; |
08 |
import android.view.View; |
09 |
import android.widget.Button; |
10 |
import android.widget.ImageView; |
11 |
12 |
public class MainActivity extends AppCompatActivity { |
13 |
14 |
private ImageView imageHolder; |
15 |
private final int requestCode = 1 ; |
16 |
17 |
@Override |
18 |
protected void onCreate(Bundle savedInstanceState) { |
19 |
super .onCreate(savedInstanceState); |
20 |
setContentView(R.layout.activity_main); |
21 |
22 |
imageHolder = (ImageView)findViewById(R.id.captured_photo); |
23 |
Button capturedImageButton = (Button)findViewById(R.id.take_picture); |
24 |
capturedImageButton.setOnClickListener( new View.OnClickListener() { |
25 |
@Override |
26 |
public void onClick(View v) { |
27 |
Intent photoCaptureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); |
28 |
startActivityForResult(photoCaptureIntent, requestCode); |
29 |
} |
30 |
}); |
31 |
} |
32 |
33 |
@Override |
34 |
protected void onActivityResult( int requestCode, int resultCode, Intent data) { |
35 |
super .onActivityResult(requestCode, resultCode, data); |
36 |
if ( this .requestCode == requestCode && resultCode == RESULT_OK){ |
37 |
Bitmap bitmap = (Bitmap)data.getExtras().get( "data" ); |
38 |
imageHolder.setImageBitmap(bitmap); |
39 |
} |
40 |
} |
41 |
} |
4. Mari kita run projectnya. setelah tampil tekan tombol take picture
Gampangkan koding android, hal ini karena banyak developer yang sharing pengalamannya diinternet. jadi tidak ada alasan lagi untuk mengeluh develop android susah.
Project diatas bisa kita kembangkan lagi misalnya dengan membuat aplikasi yang bisa memfoto dan mengirim gambarnya ke server.
Semoga Bermanfaat
Salam Hangat Developer Android
Agus Haryanto