7 days of WordPress plugins, themes & templates - for free!* Unlimited asset downloads! Start 7-Day Free Trial
Advertisement
  1. Code
  2. Android SDK

Android SDK Tip Cepat: Menjalankan kamera

Scroll to top
Read Time: 4 mins

Indonesian (Bahasa Indonesia) translation by Heri Abdi (you can also view the original English article)

Tip cepat ini menunjukkan Anda bagaimana untuk menjalankan aplikasi kamera built-in dan menggunakan hasilnya untuk menampilkan gambar yang diambil. Anda akan mencapai hal ini dengan menciptakan Intent dalam Activity aplikasi Anda. Anda kemudian akan belajar bagaimana untuk mendapatkan dan memproses hasil Intent dan menggunakan gambar yang dihasilkan dalam aplikasi Anda.

Langkah 1: Buat aplikasi Android

Mulai dengan menciptakan sebuah proyek Android. Menerapkan aplikasi Android Anda seperti biasa. Setelah Anda memiliki sebuah proyek yang sudah diatur dan aplikasi yang berjalan, putuskan di bawah keadaan apa Anda ingin meluncurkan kamera dan mengambil hasil yang ditangkap oleh kamera. Hal ini terjadi ketika kontrol tombol ditekan? Apa yang akan Anda lakukan dengan gambar yang dihasilkan? Agaknya, Anda ingin menampilkan versi berukuran tepat dari gambar yang diambil sebagai bagian dari layout Activity anda — misalnya, dalam kendali ImageView. Menerapkan tombol kontrol yang diperlukan, termasuk penanganan klik apapun. Desain tata letak yang sesuai dengan kontrol ImageView berisi foto yang dihasilkan. Setelah Anda menyelesaikan tugas-tugas ini, Anda memiliki tempat untuk:

  1. Drop dalam kode untuk meluncurkan kamera
  2. Mengambil dan menampilkan foto yang dihasilkan

Sekarang Anda siap untuk melanjutkan dengan tip cepat ini.

Langkah 2: Membuat Intent

Aplikasi kamera dapat diluncurkan untuk mengambil foto dengan Intent berikut:

android.provider.MediaStore.ACTION_IMAGE_CAPTURE

Mulailah dengan membuat Intent jenis ini, sebagai berikut, didalam penanganan klik tombol anda:

Jika Anda memulai Activity seperti ini, aplikasi kamera akan diluncurkan. Namun, Anda mungkin ingin juga gambar hasil yang ditangkap. Untungnya, Anda dapat mengambil versi View-friendly gambar kamera yang ditangkap sebagai bagian dari data hasil Intent.

Langkah 3: Meminta hasil

intent sering mulai dengan menggunakan metode startActivity(). Namun, dalam kasus ini, aplikasi Anda ingin menunggu, dan menggunakan, hasil dari pengambilan gambar aplikasi kamera. Oleh karena itu, Anda ingin mengirim Intent menggunakan panggilan startActivityForResult() sebagai gantinya. Dengan cara ini Anda dapat memeriksa hasil dan menggunakan gambar yang diambil. Oleh karena itu, kode akan terlihat seperti ini:

Ini akan memulai Activity yang memberikan hasil, dan kemudian memasukan hasil kembali ke Activity yang menjalankannya. Jika Anda sekarang bertanya-tanya CAMERA_PIC_REQUEST berasal dari mana, Baca terus.

Langkah 4: Penanganan hasil

Ketika startActivityForResult() metode ini dipanggil, Activity diluncurkan. Setelah selesai Activity itu, Activity yang dipanggil disajikan dengan hasil dalam penangan onActivityResult(). Oleh karena itu, Anda harus menerapkan metode callback onActivityResult() dalam aplikasi Activity anda sebagai berikut:

Ya, itu ada lagi: CAMERA_PIC_REQUEST. Ini adalah nilai yang Anda butuhkan untuk menetapkan dalam aplikasi Anda sebagai permintaan kode yang dikembalikan oleh pengambilan gambar kamera Intent, seperti:

Selain itu, Anda dapat menggunakan nilai ini untuk membedakan antara berbagai jenis Intent. Dalam kasus ini, hanya memverifikasi bahwa requestCode adalah salah satu yang Anda tetapkan.

Langkah 5: Mendapatkan gambar

Gambar yang dikembalikan dari ini tepat untuk tampilan pada layar perangkat kecil. Itu masuk langsung ke hasil sebagai objek Android Bitmap:

Apa yang Anda lakukan dengan objek Bitmap terserah Anda. Menampilkannya di layar semudah memanggil metode setImageBitmap() ImageView yang sudah Anda tetapkan dalam tata letak Anda (di sini kita menyebutnya photoResultView):

Android SDK Take PhotoAndroid SDK Take PhotoAndroid SDK Take Photo

Catatan pada Permission:
Meskipun aplikasi Anda adalah memanfaatkan kamera, itu tidak diperlukan untuk memiliki izin android.permission.CAMERA karena itu tidak langsung mengakses kamera. Sebaliknya, itu hanya meluncurkan aplikasi kamera melalui Intent.

Langkah 6: Menegakkan persyaratan perangkat

Jadi, Anda telah melihat bahwa itu hanya membutuhkan waktu beberapa menit untuk menambahkan fitur menangkap kamera ke aplikasi Anda. Tapi, coba tebak? Tidak semua pengguna Anda akan memiliki perangkat Android dengan built-in kamera. Uh-oh!

Untungnya, ada cara untuk membantu menghindari masalah ini: tag <uses-feature> file Android Manifest. Ini memberitahu Android Market (dan pihak berkepentingan lainnya) yang membuat aplikasi Anda menggunakan kamera dan untuk menyaring permohonan sesuai anda.

Untuk menawarkan aplikasi Anda hanya untuk pengguna dengan perangkat dengan dukungan kamera, cukup Tambahkan tag berikut ke aplikasi file AndroidManifest.xml anda:

Peringatan: Menggunakan <uses-feature> tidak menjamin bahwa aplikasi Anda tidak dapat diinstal pada perangkat tanpa kamera, bahkan jika itu benar-benar diperlukan. Jika Anda hanya menerbitkan melalui Android Market, meskipun, pengguna dengan perangkat tanpa kamera tidak akan melihat aplikasi Anda tercantum.

Kesimpulan

Dalam tip cepat ini, Anda telah belajar bagaimana untuk meluncurkan aplikasi built-in kamera menggunakan Intent dan bagaimana untuk mengambil sebuah versi dari gambar yang diambil untuk digunakan dalam aplikasi Anda sendiri. Meskipun gambar yang dihasilkan bukan gambar ukuran penuh, gambar lebih sesuai layar ponsel dan adalah cara tercepat dan paling efisien untuk mengambil dan menampilkan gambar yang diambil dari kamera. Anda dapat, pada kenyataannya, mengambil gambar dengan ukuran penuh (sering beberapa megapixels dan tidak ideal untuk tampilan) — tetapi itu, teman-teman saya, itu untuk tutorial lain. ☺

Tentang penulis

Pengembang mobile Lauren Darcey dan Shane Conder telah menulis beberapa buku tentang pengembangan Android: buku pemrograman mendalam berjudul pengembangan aplikasi Android Wireless dan pengembangan aplikasi Android Sams TeachYourself dalam 24 jam. Ketika tidak menulis, mereka menghabiskan waktu mereka mengembangkan perangkat lunak mobile di perusahaan mereka dan menyediakan jasa konsultasi. Mereka dapat dihubungi di via email ke androidwirelessdev+mt@gmail.com, melalui blog mereka androidbook.blogspot.com, dan Twitter @androidwireless.

Perlu lebih banyak bantuan menulis aplikasi Android? Periksa buku-buku terbaru dan sumber daya kami!

Buy Android Wireless Application Development, 2nd Edition Buy Sam's Teach Yourself Android Application Development in 24 Hours Mamlambo code at Code Canyon

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Code tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.