BAB 8 AKSES GOOGLE MAPS, GPS
A. Persiapan Instalasi
Bab ini akan menampilkan Google Maps dengan menunjuk pada koordinat yang telah kita tentukan. Namun sebelum menampilkan Maps, ada beberapa tahapan yang harus dilakukan, yaitu:
Instalasi Google Play Service dan mendaftar pada Google Maps API untuk mendapatkan API Key.
Silahkan download project yang telah disediakan pada link berikut Ekstrak dan buka proyek Android tersebut, pastikan bahwa Google Play services telah terinstall pada Android Studio dengan cara buka: Tools > SDK Manager,
maka akan muncul kotak dialog seperti pada gambar di bawah ini.
Pilih tab SDK Tools dan ceklis pada Google Play Services, jika statusnya Not Installed, klik Apply pada bagian bawah untuk memulai proses instalasi. Proses dari langkah ini ditampilkan dalam Gambar 8.1.
Gambar 8.1 Instalasi Google Play Service
102 PEMROGRAMAN APLIKASI MOBILE B. Membuat API Key
API key diperlukan untuk mengakses server Google Maps. Key ini bersifat gratis dan dapat digunakan dengan aplikasi apa pun.
Tahapan untuk membuat API Key adalah sebagai berikut:
1. Kunjungi link berikut: [Google developer console]
(https://console.developers.google.com/), kemudian login menggunakan email gmail yang telah dimiliki. Satu akun gmail hanya bisa mendapatkan satu API key.
2. Membuat project baru dengan cara klik Create pada bagian dashboard, atau melalui dropdown Select a Project. Proses ini ditampilkan dalam Gambar 8.2 dan Gambar 8.3 Pada halaman New Project, isikan nama project dan lokasi, kemudian klik tombol Create.
Gambar 8.2 Membuat Project Baru di Google API Part 1
Gambar 8.3 Membuat Project Baru di Google API Part 2
3. Klik link ENABLE APIS AND SERVICES pada dashboard, dan pilih Maps SDK for Android. Proses ini ditampilkan dalam Gambar 8.4.
4. Klik tombol ENABLE . Setelah itu pilih tab Credentials, proses ini ditampilkan dalam Gambar 8.5.
PEMROGRAMAN APLIKASI MOBILE 103 Gambar 8.4 Membuat Project Baru di Google API Part 3
Gambar 8.5 Membuat Project Baru di Google API Part 4
5. Klik Create Credentials pada dropdown, dan pilih api key untuk membuat key. Proses ini ditampilkan dalam Gambar 8.6. Maka akan muncul popup bahwa API key telah berhasil dibuat.
6. Pada bagian Restrict and rename API key, pilih Android apps, dan selanjutnya simpan perubahan. Proses ini ditampilkan dalam Gambar 8.7.
7. Setelah menyimpan pengaturan, copy API Key untuk digunakan di tahap selanjutnya. Proses ini ditampilkan dalam Gambar 8.8.
104 PEMROGRAMAN APLIKASI MOBILE
Gambar 8.6 Membuat Project Baru di Google API Part 5 Gambar 65:
Gambar 8.7 Membuat Project Baru di Google API Part 6 Gambar 66:
Gambar 8.8 Membuat Project Baru di Google API Part 7
PEMROGRAMAN APLIKASI MOBILE 105 C. Menambahkan Kunci API ke Aplikasi
Pengguna tidak dipebolehkan memasukkan kunci API ke dalam sistem kontrol versi, jadi disarankan untuk menyimpan kunci tersebut dalam file local.properties, file ini terletak di direktori utama project. Informasi selengkapnya tentang file local.properties, dapat dipelajari dalam link File properti Gradle. Teknik Gradle berikut menunjukkan cara menyimpan kunci API dalam file local.properties agar dapat direferensikan dengan aman oleh aplikasi pengguna.
Langkah-langkah untuk menambahkan kunci API adalah :
1. Buka local.properties di direktori tingkat project, lalu
tambahkan kode berikut ke file.
Ganti YOUR_API_KEY dengan kunci API. Ditampilkan dalam Gambar 8.9.
Gambar 8.9 Menambahkan Kunci API ke Aplikasi Part 1
2. Pada file build.gradle di tingkat aplikasi, tambahkan kode ini dalam elemen defaultConfig. Hal ini memungkinkan Android Studio membaca kunci Maps API dari file local.properties pada waktu build, lalu memasukkan variabel build mapsApiKey ke manifes Android. Proses ini ditampilkan dalam Gambar 8.10.
Gambar 8.10 Menambahkan Kunci API ke Aplikasi Part 2
106 PEMROGRAMAN APLIKASI MOBILE
3. Dalam file AndroidManifest.xml, tambahkan potongan kode berikut sebagai turunan dari elemen application.
Proses ini ditampilkan dalam Gambar 8.11.
Gambar 8.11 Menambahkan Kunci API ke Aplikasi Part 3
4. Catatan: Membatasi Kunci API akan meningkatkan keamanan aplikasi dengan memastikan hanya permintaan sah yang dibuat dengan Kunci API. Sebaiknya ikuti petunjuk untuk menetapkan pembatasan pada Kunci API.
Untuk informasi selengkapnya, lihat disini, namun pada Latihan saat ini, belum wajib untuk diterapkan
D. Menampilkan Maps pada Android Studio
Proses ini memiliki beberapa Langkah, diantaranya adalah:
1. Silahkan Cek MapsMarkerActivity.Java: lengkapi apabila terdapat coding yang kurang. Penjelasan lebih lanjut dapat dilihat dalam Gambar 8.12 dan Gambar 8.13
Gambar 8.12 Menampilkan Maps pada Android Studio Part 1
2. Menambahkan Kunci API ke dalam aplikasi: Edit file gradle.properties project. Tempelkan kunci API ke nilai properti GOOGLE_MAPS_API_KEY. Saat membuat aplikasi, Gradle menyalin kunci API ke dalam manifes Android untuk aplikasi tersebut. Proses ini ditampilkan dalam Gambar 8.14.
PEMROGRAMAN APLIKASI MOBILE 107 Gambar 8.13 Menampilkan Maps pada Android Studio Part 2
Gambar 8.14 Menampilkan Maps pada Android Studio Part 3
3. Jika default program di atas dijalankan, maka akan muncul Google Maps dengan maker yang mengarah secara default ke Sydney, seperti pada Gambar 8.15 berikut:
Gambar 8.15 Menampilkan Maps pada Android Studio Part 4 4. Silahkan melakukan pengeditan kode tersebut sehingga
dapat menampilkan lokasi tertentu seperti gambar berikut:
Contoh dalam Gambar 8.16: alun2 Batu. Cara mendapatkan latitude dan longitude dapat membaca artikel berikut.
108 PEMROGRAMAN APLIKASI MOBILE
Gambar 8.16 Menampilkan Maps pada Android Studio Part 5 E. Memahami Kode
Bagian ini akan menjelaskan perihal yang paling signifikan dari sebuah aplikasi MapWithMarker untuk membantu memahami cara membuat aplikasi yang serupa.
1. Memeriksa manifes Android: Silahkan membuka file AndroidManifest.xml di Aplikasi, tambahkan elemen meta-data untuk meletekakkan versi layanan Google Play yang digunakan dalam mengkompilasi Aplikasi. Bagian ini dijelaskan dalam Gambar 8.17
Gambar 8.17 Menyematkan Kode di Meta-data Part 1 2. Menambahkan elemen meta-data yang merupakan kunci
API yang telah dibuat sebelumnya. Petakan nilai untuk kunci API ke dalam string google_maps_key saat membuat aplikasi, Gradle akan menyalin kunci API dari file gradle.properties project tang telah dibuat ke nilai string. Proses ini ditampilkan dalam Gambar 8.18
PEMROGRAMAN APLIKASI MOBILE 109 Gambar 8.18 Menambahkan Kode di Meta-data Part 2
3. Untuk melihat bagaimana kunci API dipetakan ke nilai string, silahkan perhatikan build.gradle aplikasi yang telah dibuat. File build.gradle ini berisi baris yang ditampilkan
dalam Gambar 8.19 yang memetakan
string google_maps_key ke dalam property gradle GOOGLE_MAPS_API_KEY.
Gambar 8.19 Pemetaan Kunci API ke Nilai String
4. Contoh Manifest Lengkap akan ditampilkan dalam Gambar 8.20 dan Gambar 8.21 Berikut:
Gambar 8.20 Kode Manifes Part 1
110 PEMROGRAMAN APLIKASI MOBILE
Gambar 8.21 Kode Manifes Part 2
PEMROGRAMAN APLIKASI MOBILE 111 BAB 9
AKSES INTERNAL DEVICE KAMERA
A. Pendahuluan
Kamera merupakan salah satu perangkat keras pada Android dan dapat diakses dalam pengembangan aplikasi mobile. Android menyediakan akses penuh ke perangkat keras kamera.
Kerangka kerja Android mencakup dukungan untuk berbagai kamera dan fitur kamera yang tersedia di perangkat, memungkinkan untuk mengambil gambar di aplikasi. Lembar kerja ini membahas tentang cara mengakses kamera dan mengambil gambar dari aplikasi kamera yang dibuat.
Catatan: buku ini menjelaskan kelas android.hardware.camera, yang sebenarnya sudah tidak digunakan lagi. Untuk kelas kamera yang lebih baru terdapat camera2 dan cameraX. Namun penggunaannya lebih sulit untuk dipelajari, oleh karena itu yang digunakan adalah kelas camera.
B. Persiapan
Sebelum mengaktifkan aplikasi untuk menggunakan kamera pada perangkat Android, perhatikan beberapa hal berikut :
1. Camera – Smartphone yang digunakan harus memiliki minimal 1 kamera yang dapat diakses.
2. Kelas Kamera yang digunakan,
android.hardware.camera sudah kuno dan sudah tidak disupport oleh android (deprecated) oleh karena itu, tampilan pada android studio dicoret namun tetap dapat digunakan.
3. Izin untuk menggunakan kamera dan penyimpanan harus disetujui agar aplikasi dapat digunakan.
C. Mengembangkan aplikasi kamera
Langkah – Langkah umum untuk mengembangkan aplikasi kamera adalah sebagai berikut :
112 PEMROGRAMAN APLIKASI MOBILE 1. Memeriksa & Meminta Izin
2. Mendeteksi dan Mengakses Kamera - Buat kode untuk meminta akses dan memeriksa keberadaan kamera.
3. Membuat Class Preview - Buat class preview kamera yang memperluas SurfaceView dan mengimplementasikan antarmuka SurfaceHolder. Class ini mempreview gambar langsung dari kamera.
4. Membuat Tata Letak Preview - Setelah memiliki class preview kamera, buat tata letak tampilan yang menggabungkan preview dan kontrol antarmuka pengguna yang diiinginkan.
5. Menyiapkan listener untuk Pengambilan Foto - Hubungkan listener untuk kontrol antarmuka guna memulai pengambilan gambar atau video sebagai respons terhadap tindakan pengguna, seperti menekan tombol.
6. Mengambil dan Menyimpan File - Siapkan kode untuk mengambil gambar atau video dan menyimpan hasilnya.
7. Melepas Kamera - Setelah menggunakan kamera, aplikasi harus dirilis dengan benar untuk digunakan oleh aplikasi lain.
Hardware kamera adalah sumber daya bersama yang harus dikelola dengan hati-hati agar aplikasi tidak bertabrakan dengan aplikasi lain yang mungkin juga ingin menggunakannya. Bagian berikut membahas cara mendeteksi hardware kamera, cara meminta akses ke kamera, cara mengambil gambar atau video, dan cara melepas kamera setelah aplikasi selesai menggunakannya.
Perhatian: Ingatlah untuk melepas objek Camera dengan memanggil Camera.release() setelah aplikasi selesai menggunakannya! Jika aplikasi tidak merilis kamera dengan benar, semua upaya berikutnya untuk mengakses kamera, termasuk yang dilakukan oleh aplikasi itu sendiri, akan gagal dan dapat menyebabkan aplikasi atau lainnya error.
1. Buat New Project, Beri nama Camera_1, Gunakan minimum API 21 keatas (21+) agar dapat menggunakan semua fitur
PEMROGRAMAN APLIKASI MOBILE 113 Gambar 9.1 Konfigurasi Project Baru
2. Menambahkan Izin
Langkah pertama yang perlu dilakukan adalah menambahkan izin untuk penggunaan kamera, dan izin untuk melakukan penyimpanan gambar atau video ke dalam perangkat pada file AndroidManifest.xml
Gambar 9.2 Izin pada AndroidManifest.xml
Sehingga tampilan AndroidManifest.xml Menjadi seperti berikut
114 PEMROGRAMAN APLIKASI MOBILE
Gambar 9.3 Tampilan AndroidManifest.xml setelah ditambahkan izin
3. Memeriksa Izin
Agar mendapatkan izin untuk menggunakan kamera, pada saat aplikasi pertama kali di buka, perlu ditambahkan permintaan izin untuk penggunaan kamera dan pengaksesan storage (menyimpan file).
Tambahkan sebuah method boolean untuk meminta izin dengan nama cekIzinDitolak() pada file MainActivity.Java
Gambar 9.4 Pengecekan Izin dalam program
PEMROGRAMAN APLIKASI MOBILE 115 Method cekIzinDitolak() akan mengembalikan nilai berupa true jika izin belum di berikan, dan false jika sudah. dan PERMISSION adalah sebuah Variabel String Array yang berisi izin apa saja yang mau diminta.
Gambar 9.5 Kode Permissions untuk mengecek izin Dimana izin yang akan diminta yaitu untuk penggunaan camera dan penyimpanan.
Panggil callBack onResume, dan tambahkan code berikut untuk menggunakan method yang sudah di buat sebelumnya.
Gambar 9.6 Kode untuk method callback onResume Pada saat callback onResume() dipanggil, aplikasi akan melakukan pengecekan izin, dan jika izin belum diberikan, akan memanggil fungsi requestPermissions() yang akan meminta izin kepada pengguna. Dan REQUEST_CODE adalah variable int yang berisi code yang digunakan sebagai code untuk melakukan request.
4. Mengakses kamera
Untuk mengakses camera, langkah pertama yang perlu dilakukan yaitu mendapatkan objek Camera, Untuk itu fungsi Camera.open() perlu dipanggil. Dan untuk memudahkan penggunaan, buat sebuah method Camera dengan nama getCamera()
116 PEMROGRAMAN APLIKASI MOBILE
Gambar 9.7 Fungsi Untuk memanggil kamera pertama kali
Memanggil Camera.open() akan memunculkan error/exception jika kamera sudah digunakan oleh aplikasi lain, Oleh karena itu ditambahkan dalam blok try-catch dan akan menampilkan sebuah Toast jika kamera tidak dapat diakses.
Keterangan : Fungsi Camera.open() dapat diberi sebuah parameter untuk memilih kamera berupa integer jika kamera yang tersedia lebih dari satu.
Contoh : Camera.open(1); //untuk menggunakan kamera depan
Untuk memanggil fungsi getCamera() panggil fungsi getCamera pada callback OnResume dan masukan pada sebuah variabel Camera dengan nama mCamera
Gambar 9.8 Fungsi getCamera()
Variabel mCamera adalah sebuah variable Camera yang diisi dengan null untuk sementara.
PEMROGRAMAN APLIKASI MOBILE 117 Perlu diingat bahwa setiap pemanggilan variable Camera, yang digunakan(di import) adalah android.hardware.Camera
Gambar 9.9 Import library android.hardware.camera
5. Membuat Preview Kamera
Agar pengguna dapat mengambil gambar atau video secara efektif, mereka harus dapat melihat apa yang dilihat kamera perangkat. Class preview kamera adalah SurfaceView yang dapat menampilkan data gambar langsung yang berasal dari kamera, sehingga pengguna dapat membingkai dan mengambil gambar atau video.
6. Class Preview
Untuk mulai menampilkan preview, diperlukan class Preview.
Preview memerlukan implementasi
android.view.SurfaceHolder.Callback, yang digunakan untuk membuat dan menutup tampilan kamera.
Tambahkan Class Preview berikut pada mainActivity sebagai local Class.
118 PEMROGRAMAN APLIKASI MOBILE
Class yang dibuat akan dikenali sebagai error karena class yang mengimplementasikan SurfaceHolder.Callback wajib memiliki implementasi method surfaceCreated(), surfaceChanged(), dan surfaceDestroyed()
Untuk memengimplementasikan method tersebut, klik lampu merah pada bagian yang error / klik alt+enter
Gambar 9.10 Implement method (1)
Lalu pilih implement methods, pilih ketiga method lalu klik OK
Gambar 9.11 Implement method (2)
Maka ketiga method tersebut akan secara otomatis diimplementasikan
PEMROGRAMAN APLIKASI MOBILE 119 Gambar 9.12 Implement method (3)
Kemudian tambahkan lagi method constructor dengan menekan tombol lampu merah sekali lagi
Gambar 9.13 Create Constructor (1) Pilih Create constructor matching super
Gambar 9.14 Create Constructor (2)
Dan pilih pilihan pertama lalu klik tombol Ok, dan ubah method Constructor yang dibuat dengan menambahkan parameter Camera,
120 PEMROGRAMAN APLIKASI MOBILE
Dan isikan code berikut untuk menambahkan SurfaceHolder dan Kamera
Gambar 9.15 Menambahkan SurfaceHolder Camera
Dimana surfaceHolder digunakan untuk memanggil fungsi ketika preview di buat ,dirubah atau ditutup.
Lalu pada method surfaceCreated, tambahkan code berikut untuk mengatur tampilan camera.
Gambar 9.16 Method SurfaceCreated
Dimana Fungsi :
• setPreviewDisplay digunakan untuk menentukan tampilan preview
• startPreview untuk menampilkan tampilan preview Camera
• dan setDisplayOrientation digunakan untuk mengatur orientasi kamera
PEMROGRAMAN APLIKASI MOBILE 121 Fungsi diletakan pada blok try-catch agar ketika camera tidak dapat digunakan aplikasi akan menampilkan toast pemberitahuan.
Method surfaceChanged digunakan untuk mengatur jika preview camera yang diinginkan dapat berubah tampilan atau berubah orientasi nya (rotate). Untuk sekarang biarkan kosong.
Method surfaceDestroyed akan dipanggil ketika tampilan preview ditutup, dan diisi dengan camera.Release() atau menutup Camera agar dapat digunakan pada aplikasi lain.
Gambar 9.17 Method SurfaceDestroyed
Class Preview yang telah dibuat sebelumnya, harus diletakan dalam suatu komponen View yang nantinya digunakan sebagai tempat untuk mengatur tampilan kamera. Dan dalam contoh ini, komponen yang digunakan adalah FrameLayout, yang digunakan sebagai Container untuk kelas preview kamera.
Dan tambahkan sebuah Imagebutton yang nantinya digunakan untuk shutter camera.
122 PEMROGRAMAN APLIKASI MOBILE
Dimana android:src diisi dengan gambar camera yang perlu ditambahkan.
Gambar 9.18 Tampilan Awal FrameLayout untuk Camera
Lalu pada fungsi onResume, tambahkan class preview ke dalam komponen FrameLayout yang telah dibuat sebelumnya
PEMROGRAMAN APLIKASI MOBILE 123 Dimana preview adalah variable objek dari local class preview yang telah dibuat sebelumnya.
Dan frameLayoutPreview adalah komponen frameLayout
Sehingga method onResume menjadi seperti berikut
Gambar 9.19 Method OnResume
Coba Jalankan dan lihat apakah camera telah dapat digunakan.
7. Mengambil Foto
Setelah membuat class preview dan tata letak tampilan untuk menampilkannya, Aplikasi siap digunakan untuk mengambil gambar. Untuk mengambil gambar, gunakan metode Camera.takePicture(), metode ini mengambil tiga parameter ayng menerima data dari kamera. Untuk menerima data dalam format JPEG, harus diimplementasikan antarmuka Camera.PictureCallback untuk menyimpan gambar yang diterima dari kamera.
Sebelum mengatur method PictureCallback, tambahkan sebuah method File getOutputMediaFile() yang berfungsi
124 PEMROGRAMAN APLIKASI MOBILE
untuk menentukan letak penyimpanan dan nama file yang akan dibuat. Output dari method ini adalah sebuah file image yang masih kosong.
Gambar 9.20 Fungsi getOutputMediaFile
Tambahkan code berikut pada fungsi onResume untuk memanggil method PictureCallback()
Dimana mPicture merumapan variable dari objek Camera.PictureCallback
Gambar 9.21 Fungsi onPictureTaken
PEMROGRAMAN APLIKASI MOBILE 125 Lalu tambahkan method setOnClickListener untuk menghandle button click dan memanggil method takePicture()
Gambar 9.22 Fungsi Handle saat button shutter di click
Ketika button di click, aplikasi akan mengambil gambar ( takePicture() ) dan layar preview akan menampilkan gambar yang diambil dan tidak menampilkan preview kamera. Untuk menampilkan ulang tampilan preview camera, harus menampikan ulang preview dari camera dengan memanggil camera.startPreview()
Oleh karena itu switch case digunakan, aplikasi akan menampilkan ulang preview camera Ketika previewState bernilai BUSY, dan akan mengambil gambar Ketika previewState bernilai PREVIEW.
Dimana nilai default dari previewState adalah “PREVIEW”.
Coba jalankan, dan click tombol untuk mengambil gambar.
Amati hasilnya
Untuk fungsi-fungsi camera lainnya dapat dilihat pada link berikut :
126 PEMROGRAMAN APLIKASI MOBILE
• https://developer.android.com/training/camera
• https://developer.android.com/training/camera/cam eradirect
• https://developer.android.com/guide/topics/media/c amera
Tugas
• Mengerjakan Latihan diatas untuk menggunakan kamera pada perangkat smartphone / emulator
• Ubah program diatas untuk kamera depan / kamera lainnya.
PEMROGRAMAN APLIKASI MOBILE 127 BAB 10
MENGGUNAKAN SENSOR ANDROID - ACCELERATOR
A. Pendahuluan
Sebagian besar perangkat Android memiliki sensor bawaan yang dapat digunakan untuk mengukur dan mendeteksi gerakan, orientasi, dan berbagai kondisi lingkungan lainnya. Sensor ini dapat memberikan data dengan akurasi dan presisi tinggi dan dapat digunakan untuk memantau posisi atau pergerakan perangkat serta memantau perubahan kondisi di lingkungan sekitar perangkat.
Misalnya, jika membuat aplikasi game, maka memerlukan sensor untuk mendeteksi gerakan dan gestur dari perangkat. Seperti tilt, wobble, rotasi, swing, atau game yang menggunakan Virtual Reality.
Demikian juga, jika perangkat mendukung sensor suhu, maka dapat menggunakan sensor untuk mengetahui suhu dan kelembaban perangkat.
B. Tipe Sensor
Secara garis besar, android mendukung 3 jenis tipe sensor, yaitu:
1. Sensor Gerak ( Motion Sensor)
Sensor dalam kategori ini mengukur akselerasi, akselerasi, dan gaya rotasi perangkat berdasarkan sumbu x,y,z. Contoh:
Accelerometer, sensor gravitasi, giroskop, dan sensor vektor rotasi.
2. Sensor Kondisi Lingkungan ( Environment Sensor) Sensor dalam kategori ini mengukur parameter kondisi lingkungan, seperti tekanan udara, suhu, pencahayaan, dan kelembapan lingkungan di sekitar perangkat. Contoh:
barometer, fotometer, dan termometer.
3. Sensor Posisi (Position Sensor)
Sensor ini mengukur posisi fisik perangkat yang digunakan.
Contoh perangkat ini adalah Orientasi dan magnetometer.
C. Pengenalan Sensor
Kerangka kerja sensor Android memungkinkan untuk mengakses berbagai jenis sensor. Beberapa sensor ini berbasis perangkat keras dan beberapa berbasis perangkat lunak. Sensor berbasis
128 PEMROGRAMAN APLIKASI MOBILE
perangkat keras adalah komponen fisik yang dibangun ke dalam perangkat handset atau tablet. Sensor mengambil data dengan langsung mengukur sifat lingkungan tertentu, seperti percepatan, kekuatan medan geomagnetik, atau perubahan sudut. Sensor berbasis perangkat lunak bukanlah perangkat fisik, meskipun mereka meniru sensor berbasis perangkat keras. Sensor berbasis perangkat lunak mengambil data dari satu atau lebih sensor berbasis perangkat keras dan terkadang disebut sensor virtual atau sintetis. Sensor percepatan linier dan sensor gravitasi adalah contoh sensor berbasis perangkat lunak. Tabel 1 merangkum sensor yang didukung oleh platform Android.
Beberapa perangkat Android memiliki semua jenis sensor.
Misalnya, sebagian besar handset dan tablet memiliki akselerometer dan magnetometer, tetapi hanya sedikit perangkat yang memiliki barometer atau termometer. Selain itu, perangkat dapat memiliki lebih dari satu sensor dari jenis tertentu. Misalnya, perangkat mungkin memiliki dua sensor gravitasi, masing-masing dengan jangkauan yang berbeda
Tabel 9.1 Contoh jenis-jenis Sensor
Sensor Jenis Deskripsi Penggunaan Umum
TYPE_ACCELERO METER
Hardware Mengukur gaya
akselerasi dalam
Hardware Mengukur suhu
ruangan sekitar dalam derajat Celcius (°C).
Lihat catatan di bawah.
Memantau suhu udara.
TYPE_GRAVITY Software atau Hardware
PEMROGRAMAN APLIKASI MOBILE 129
y, z).
TYPE_GYROSCOP E
Hardware Mengukur tingkat rotasi perangkat dalam rad/s di sekitar setiap
TYPE_LIGHT Hardware Mengukur level cahaya sekitar (pencahayaan)
Hardware Mengukur medan geomagnetik sekitar
Software Mengukur derajat rotasi yang dibuat perangkat di sekitar ketiga sumbu fisik (x, y, z). Pada API level 3,
Anda dapat
memperoleh matriks kemiringan dan matriks rotasi untuk perangkat menggunakan sensor gravitasi dan sensor medan geomagnetik
TYPE_PRESSURE Hardware Mengukur tekanan Memantau
130 PEMROGRAMAN APLIKASI MOBILE
udara sekitar dalam hPa atau mbar.
perubahan tekanan udara.
TYPE_PROXIMITY Hardware Mengukur kedekatan objek dalam cm sesuai dengan layar tampilan perangkat. Sensor ini biasanya digunakan untuk menentukan apakah suatu handset berada di telinga
Hardware Mengukur kelembapan udara relatif dalam elemen vektor rotasi perangkat.
Deteksi gerakan dan deteksi rotasi.
TYPE_TEMPERAT URE
Hardware Mengukur suhu
perangkat dalam derajat Celcius (°C).
Penerapan sensor ini bervariasi antar perangkat
Memantau suhu.
D. Framework Sensor
Akses sensor sensor diatas dan untuk mendapatkan data mentah hasil pengukuran diperlukan menggunakan Android sensor framework. Framework sensor ini adalah bagian dari android.hardware dan memiliki beberapa class dan tampilan antarmuka seperti berikut
1. SensorManager
Class ini digunakan untuk membuat instance layanan sensor.
Class ini menyediakan berbagai metode untuk mengakses dan mendaftar sensor, mendaftarkan dan membatalkan
PEMROGRAMAN APLIKASI MOBILE 131 pendaftaran pendengar peristiwa sensor, dan mendapatkan informasi orientasi. Class ini juga menyediakan beberapa
PEMROGRAMAN APLIKASI MOBILE 131 pendaftaran pendengar peristiwa sensor, dan mendapatkan informasi orientasi. Class ini juga menyediakan beberapa