Anda di halaman 1dari 131

PENYUSUN

Komunitas Keahlian Studio Manajemen Industri Tim Asisten Studio Manajemen Industri

• Akbar Gunawan, ST., MT. • Arfi Meliyanti

• Hadi Setiawan, ST., MT. • Amalia Firdhausa M.

• Dr. Putiri Bhuana Katili, ST., MT. • Bernard Christoper S.

• Nurul Ummi, ST., MT. • Kee Evellyne Afiami A.

• Nuraida Wahyuni, ST., MT. • Triwin Rushliana A.

• Dr. Shanty Kirana Anggraeni, SP., MT. • Winna Nabilah Aqilla

• Dr. Sirajuddin, ST., MT. • Hermawan Adrianto


• Thahara Agita Muslihan
• Alya Rahmayani Zhen
• M. Habibie Urfa Wibowo
• Rifan Maulana
• Halisatu Zakia
• Tasya Berliana Aldriansyah
• Damasa Gianina Desmiani
• Maulana Malik I.

Penerbit :
Laboratorium Studio Manajemen Industri
Jurusan Teknik Industri
Fakultas Teknik Universitas Sultan Ageng Tirtayasa
Jl. Jenderal Sudirman KM. 3
Gedung Perkuliahan Lantai 3 R. 3.17 Kota Cilegon, Banten 42434
PERATURAN
Peraturan Umum
1. Praktikan wajib membawa modul dan tugas pendahuluan saat responsi.
2. Praktikan wajib memakai name tag saat responsi.
3. Praktikan wajib berlaku sopan dan santun.
4. Laporan yang dikumpulkan harus sudah di ACC H-2 oleh Asisten pembimbing
(dibuktikan dengan ttd Asisten pembimbing pada cover laporan).
5. Laporan dikumpulkan pada waktu yang telah ditentukan.
6. Telat mengumpulkan laporan dinyatakan BLACKLIST kelompok.
7. Kurang konten laporan dinyatakan pengurangan nilai 20%.
8. Laporan copy paste dinyatakan BLACKLIST MODUL.
9. BLACKLIST ≥ 3 KALI DOWN GRADE NILAI AKHIR.
10. Pengumuman mengenai Praktikum Pemrograman Dasar Komputer akan
diinformasikan melalui official account SMI dan asisten pembimbing.
11. Setiap praktikan wajib menaati seluruh peraturan yang berlaku.
12. Hal-hal yang belum tercantum dalam semua peraturan akan ditentukan
kemudian.

Peraturan Responsi
1. Praktikan wajib menggunakan pakaian rapih, sopan, berkemeja (Non PDH).
2. Praktikan wajib hadir tepat waktu.
a. Telat 1-10 menit = gugur nilai sikap
b. Telat 10-20 menit = gugur nilai sikap dan tidak dapat mengikuti pretest/post
test
c. Telat > 20 menit = GUGUR NILAI MODUL
d. Setiap keterlambatan mempengaruhi nilai sikap.
3. Saat responsi dilarang makan, minum, merokok dan membuat forum di dalam
responsi.
4. Pada saat responsi asisten berhak memperingatkan bahkan mengeluarkan
praktikan yang tidak dapat menjaga ketenangan, ketertiban, kebersihan, dan
kerapihan ruangan pada saat responsi dilaksanakan.
5. Praktikan dilarang meninggalkan ruangan praktikum tanpa seizin asisten
(toleransi meninggalkan ruangan maks 2x dengan alasan gangguan koneksi)
6. Mengikuti berlangsungnya praktikum dari awal hingga waktu selesai.
7. Tidak mengkuti responsi tanpa alasan yang jelas dan tidak dapat
dipertanggungjawabkan maka praktikan GUGUR NILAI MODUL tersebut.
8. Mekanisme Pemindahan Jadwal:
a. Memberikan keterangan yang jelas dan disertakan bukti yang dapat
dipertanggungjawabkan.
b. Konfirmasi maksimal 1 hari sebelum dilakukannya responsi.
c. Mengisi form change shift yang disediakan.
d. Diperbolehkan berpindah jadwal maksimal 1 kali.
9. Praktikan harus mematuhi semua tata tertib pelaksanaan praktikum di atas.

Peraturan Asistensi Atau Bimbingan


1. Setiap kelompok didampingi oleh asisten pembimbing.
2. Jadwal bimbingan disesuaikan dengan kesepakatan antara asisten pembimbing
dengan praktikan.
3. Saat bimbingan wajib membawa progres laporan.
4. Minimal bimbingan sebanyak 5 kali. Kurang dari 5 kali tidak dapat mengikuti
sidang akhir.
5. Saat bimbingan semua anggota kelompok diwajibkan hadir. Jika melanggar
dianggap sebagai konsultasi kecuali dengan alasan tertentu yang dapat diterima
oleh asisten.
6. Saat bimbingan menggunakan pakaian rapih dan sopan.
`

PEMROGRAMAN DASAR KOMPUTER


MODUL I
PENGENALAN ANDROID

LABORATORIUM TEKNIK INDUSTRI


FAKULTAS TEKNIK
UNIVERSITAS SULTAN AGENG TIRTAYASA
2021
`

MODUL I
PENGENALAN ANDROID

I. PENDAHULUAN
1.1 TUJUAN PRAKTIKUM :
1. Praktikan mampu memahami sejarah pengenalan android dan
perkembangan android .
2. Praktikan mengetahui fitur-fitur android serta kelebihan dan kekurangan
andorid.
1.2 ALAT DAN BAHAN
Berikut ini merupakan alat dan bahan yang akan digunakan dalam praktikum
modul 1 pengenalan android studio:
1. Alat : Laptop dan perangkat seluler
2. Bahan : Modul praktikum dasar komputer 2021
1.3 PROSEDUR PRAKTIKUM
1. Seluruh kelompok mengikuti sesi pelatihan software android studio yang
menjelaskan tentang pengenalan sejarah android, versi-versi android,
distribusi platform android, fitur android, dan peralatan yang digunakan.
2. Sesi pelatihan selanjutnya, praktikan diberikan soal latihan sederhana dan
diminta untuk menyelesaikan soal latihan tersebut.
3. Tahap selanjutnya, praktikan melakukan tutorial membuat project
sederhana sesuai arahan asisten.
4. Kumpulkan hasil project sederhana pada asisten.

II. MEKANISME PROSES


2.1 Sejarah Pengenalan Android
Android adalah sebuah sistem operasi perangkat mobile berbasis linux yang
mencangkup sistem operasi, middleware dan aplikasi. Android menyediakan
platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka.
Awalnya, Google Inc. membeli Android Inc. yang merupakan pendatang baru
`

yang membuat peranti lunak untuk ponsel atau smartphone. Kemudian untuk
mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34
perusahaan peranti keras, peranti lunak dan telekomunikasi, termasuk Google,
HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia. Pada saat perilisan
perdana, 5 November 2007, Android bersama Open Handset Alliance menyatakan
mendukung pengembangan open source pada perangkat mobile. Di lain pihak,
Google merilis kode-kode Android di bawah lisensi Apache, sebuah lisensi
perangkat lunak dan open platform perangkat seluler
Android menawarkan pendekatan menyeluruh dalam pengembangan aplikasi.
Artinya, Suatu aplikasi android yang dibangun dapat berjalan di berbagai perangkat
yang menggunakan sistem operasi android (Smartphone, Smartwatch, Tablet, dan
perangkat lain). Perkembangan teknologi yang begitu pesat tidak dapat lepas dari
peran AOSP (Android Open Sourch Project) yang bertanggung jawab dalam
pengembangan sistem operasi android dan dipimpin oleh google.
2.1.1 Versi- versi Android
Sejak pertama kali diperkenalkan pada tahun 2007, Android telah mengalami
perkembangan yang begitu pesat, hal ini di tandai dengan banyaknya versi sistem
operasi android. Berikut ini beberapa versi android :
Versi Android API Level Tanggal Rilis Code Name
1.0 1 23 September 2008
1.1 2 9 Februari 2009
1.5 3 30 April 2009 Cupcake
1.6 4 15 September 2009 Donut
2.0/2.0.1/2.1 5/6/7 26 Oktober 2009 Éclair
2.2-2.2.3 8 20 Mei 2010 Froyo
2.3-2.3.2/2.3.3-2.3.7 9/10 6 Desember 2010 Gingerbeard
3.0/3.1/3.2-3.2.6 11/12/13 22 Februari 2011 Honeycomb
4.0-4.0.2/4.0.3-4.0.4 14/15 19 Oktober 2011 Ice cream sandwich
4.1-4.1.2/4.2 16/17/18 27 Juni 2012 Jelly Bean
4.1-4.1.2/4.3-4.2.2/4.3.1 19/20 31 Oktober 2013 KitKat
5.0-5.0.2/5.1-5.1.1 21/22 12 November 2014 Lollipop
6.0-6.0.1 23 5 Oktober 2015 Marshmallow
7.0-7.1 24/25 24 agustus 2016 Nougat
8.0.0-8.10 26/27 8 juni 2017 Oreo
9.0 28 6 agustus 2018 Pie
`

2.1.2 Distribusi platform


Berikut ini merupakan distribusi platform versi android yang diperoleh
melalui situs resmi pengembangan Android (developer.android.com) per
Desember 2015 :
Versi Codename API Distribusi
2.2 Froyo 8 0.2%
2.3.3-2.3.7 Gingerbread 10 3.4%
4.0.3-4.0.4 Ice Cream Sandwich 15 2.9%
4.1.x Jelly Bean 16 10.0%
4.2.x 17 13.0%
4.3 18 3.9%
4.4 Kitkat 19 36.6%
5.0 Lollipop 21 16.3%
5.1 22 13.2%
6.0 Marshmallow 23 0.5%
7.0 Nougat 24 11.4%
7.1 25 7.8%
8.0 Oreo 26 12.9%
8.1 27 15.4%
9 Pie 28 10.4%
Catatan: Data ini diperoleh dari Google Playstore App yang mendukung android
2.2 ke atas sehingga perangkat yang berjalan pada versi yang lebih lama tidak
dipertimbangkan.
2.1.3 Fitur-fitur Android
Sejak pertama kali diperkenalkan android telah dilengkapi dengan beberapa
fitur utama yang harus dimilki oleh smartphone maupun perangkat komunikasi
pintar lainnya. Berikut ini adalah beberapa fitur yang disediakan oleh android dan
dapat dimanfaatkan dalam pengembangan aplikasi yang dibangun:
1. Media Penyimpanan (Storage)
Untuk media penyimpanan internal android menggunakan SQlite. Selain itu
android juga mendukung fasilitas penyimpanan data di eksternal storage
seperti SD card.
2. Koneksi Jaringan (Connectivity)
Android mendukung GSM/EDGE, IDEN, CDMA, EV-DO, UMTS,
Bluetooth, Wi-Fi, LTE, dan Wimax.
`

3. Koneksi Jaringan (Connectivity)


Android mendukung GSM/EDGE, IDEN, CDMA, EV-DO, UMTS,
Bluetooth, Wi-Fi, LTE, dan Wimax.
4. Messaging
Android mendukung SMS dan MMS.
5. Web Browser
Bawaan android dibangun berbasis pada open source blink (sebelumnya
webkit) dan Chrome’s v8 Java Script Engine.
6. Web Support (Dukungan Media)
Android mendukung beragam jenis media seperti H.263, H.264, MPEG-4
SP, AMR, AMR-WB, AAC, HE-AAC, MP3, MIDI, Ogg Vorbis, WAV,
JPEG, PNG, GIF, dan BMP.
7. Hardware Support (dukungan perangkat keras)
Android menyediakan beragam hardaware yang dapat digunakan oleh
pengembang aplikasi, seperti accelometer sensor, gyrocopes, barometers,
magnetometers, termometers, camera, digital compass, proximity and
pressure sensors, dan GPS.
8. Multitouch
Android mendukung multitouch screen.
9. Multitasking
Android mendukung multitasking application.
10. Dukungan Flash
Sejak android 2.3 mendukung flash 10.1.
11. Tethering
Android mendukung sharing koneksi internet sebagai wired/wireless
hotspot.
12. Voice-Based Features (fitur-fitur berbasis suara)
Android menyediakan beragam aplikasi berbasis suara seperti google
search, google’s knowledge graph, dan lain sebagainya.
`

13. Screen Capture (Tangkapan Layar)


Sejak android 4.0, pengguna android dapat mengambil screenshot dengan
menekan tombol power+volume down pada perangkatnya. (m) aksesbilitas
(accesbility) – android menyediakan bulid-in text-to-speech dari TalkBack
dan berbagai fasilitas lain untuk memberi kemudahan bagi pengguna
android terutama bagi kalangan difabel.
14. Handset Layout
Aplikasi android dapat berjalan pada beragam ukuran layar dan dapat
dikoneksikan ke eksternal screen melalu HDMI atau Miracase (wirelessly).
2.2 Peralatan yang Digunakan
Dalam mengembangkan suatu aplikasi android hendaknya memastikan
peralatan yang menunjang aplikasi android tersebut. berikut ini peralatan yang
perlu dipersiapkan antara lain:
1. Java JDK dan Java JRE
Pengembangan aplikasi android didasarkan pada Bahasa pemograman Java,
untuk itu harus dipastikan personal computer atau PC yang digunakan telah
diinstall dengan minimum Java Development Kit (JDK) 7 dan Java Runtime
Environment (JRE) 6.
2. Android SDK
Untuk membantu pembanguna aplikasi android dibutuhkan android system
development kit (SDK) yang berisikan beragam libraries dan build tools
yang dibutuhkan. Jika telah menggunakan android studi sebagailingkungan
pengembangan aplikasi android, SDK ini telah disertakan dalam instalasi
android studi tersebut. Namun, jika ingin menggunakan IDE lainnya atau
editor build script, maka dapat mengunduh stand-alone android SDK tools.
3. Android Studio IDE
Pada 16 Mei 2013, Google meluncurkan android studio sebagai lingkungan
pengembangan terintegrasi (integrated development environment atau IDE)
baru untuk android. Didasarkan pada intellij IDEA, android studi
menyediakan beberapa fitur tambahan dan pengembangan dari eclipse ADT yang
sebelumnya digunakan dalam pengembangan aplikasi android. Dalam versi stabil
pertama android studio dirilis pada Desember 2014 dan menjadi IDR resmi yang
digunakandalam pengembangan android.
4. Android Virtual Device
Dalam mengembangkan suatu aplikasi android tentunya ingin mencoba
menjalankan aplikasi tersebut diberbagai perangkat dan versi android yang
ada untuk melihat apakah aplikasi tersebut dapat berjalan dengan baik atau
tidak dan sesuai harapan. Untuk itu android menyediakan Android Virtual
Devices (AVDs) yang sudah terintegrasi dengan android studio IDE, yang
dapat digunakan oleh pengembang aplikasi android untuk mencoba
menjalankan aplikasi yang dibangunnya dalam berbagai perangkat danversi
android yang tersedia melalu suatu perangkat virtual. Perangkat virtual ini
dapat diatur dan ditampilkan sebagaimana perangkat aslinya.

III. KESIMPULAN
Berikut ini adalah kesimpulan dari materi yang terdapat pada modul 1:
1. Praktikan memahami sejarah android dan perkembangan android,
diharapkan praktikan dapat mengenal sejarah android dan perkembangan
android.
2. Praktikan mengetahui fitur-fitur andorid serta mengetahui kelebihan dan
kekurangan andorid.

IV. TUGAS PENDAHULUAN


Kerjakan tugas pendahuluan berikut dengan seksama, cermat dan tepat untuk
lebih mengetahui mengenai android.
1. Jelaskan secara singkat sejarah android!
2. Jelaskan pengertian android!
3. Sebutkan kelebihan android!
4. jelaskan api level android!
5. Sebutkan versi-versi android!
6. Sebutkan distribusi platform versi android!
7. Sebutkan dan jelaskan fitur-fitur yang ada di android!
8. Sebutkan hardware support untuk android!
9. Sebutkan dan jelaskan peralatan yang digunakan untuk menunjang
aplikasi android!
10. Apa perbedaan android studio dan SDK?
PEMROGRAMAN DASAR KOMPUTER
MODUL II
PENGENALAN ANDROID STUDIO

LABORATORIUM TEKNIK INDUSTRI


FAKULTAS TEKNIK
UNIVERSITAS SULTAN AGENG TIRTAYASA
2021
MODUL II
PENGENALAN ANDROID STUDIO

I. PENDAHULUAN
Perkembangan ilmu pengetahuan dan teknologi komputer semakin
berkembang dan maju dengan sangat pesat, hal ini tentunya dapat mengatasi
kesulitan mahasiswa dalam memperoleh informasi secara tepat dan aktual.
Perkembangan ini turut diikuti dengan berkembangnya teknologi Mobile
Smartphone. Dalam pemanfaatanya teknologi ini sangat membantu aktifitas
sehari-hari para penggunaannya, misalkan untuk media bisnis, media
pembelajaran, media hiburan, dan juga media informasi. Era informasi
memberikan ruang lingkup yang sangat besar untuk segala kegiatan melalui cara
baru, inovatif, instan, transparan, akurat, dan tepat waktu, memberikan
kenyamanan yang lebih dalam mengelola dan menikmati kehidupan.
Smartphone sudah menjadi tren gaya hidup, khususnya dengan ponsel
dengan sistem berbasis android. Android adalah sebuah sistem operasi mobile
yang dikhususkan untuk smartphone dan tablet. Dalam mempelajari pengenalan
android studio masing masing memiliki fitur dan komponen yang berbeda beda.
Disesuaiakn dengan kebutuhannya. Penggunaan coding adalah hal yang harus
diperhatikan dalam belajar android studio. Pada praktikum pengenalan android
studio ini praktikan diharapkan dapat mengenal pengertian android studio dengan
kelebihan serta kekurangan android studio dan juga dapat membuat aplikasi
sederhana seperti “Hello World” yang dapat run di smartphone masing-masing.
1.1 TUJUAN PRAKTIKUM
Tujuan dari Modul II Pemrograman Dasar Komputer antara lain:
1. Mampu memahami definisi pengertian Android Studio.
2. Mengenali konsep dasar sistem operasi beserta setting up pada Android Studio
3. Mampu membuat project sederhana Hello world beserta cara
menjalankannya, baik melalui perangkat virtual maupun dengan perangkat
nyata secara langsung.
1.2 ALAT DAN BAHAN
Berikut ini merupakan alat dan bahan yang akan digunakan dalam
praktikum modul 2 pengenalan android studio:
1. Alat : Laptop, Kabel USB, Smartphone, dan software Android Studio
2. Bahan : Modul praktikum dasar komputer 2020
1.3 PROSEDUR
Prosedur pelaksanaan dan penyelesaian Modul II antara lain:
1. Seluruh kelompok mengikuti sesi pelatihan software Android Studio melalui
teleconference yang dilakukan oleh SMI.
2. Seluruh praktikan wajib mengikuti sesi tutorial penginstallan Android
Studio dan membuat project sederhana Hello World.
3. Praktikan wajib mengerjakan soal latihan Modul II tentang Android
Studio dengan waktu ditentukan asisten.
4. Komunikasikan hasil pelatihan modul II dengan asisten dan dosen pengampu.

II. MEKANISME PROSES


2.1 Android Studio
Android Studio menurut Nazaruddin (2012 : 1) merupakan sistem operasi
untuktelepon seluler yang berbasis Linux. Android menyediakan platform terbuka
bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk
digunakan oleh bermacam peranti bergerak. Android umum digunakan di
smartphone dan juga tablet PC. Fungsinya sama seperti sistem operasi Symbian
di Nokia, iOS di Apple dan BlackBerry OS.
Android merupakan suatu sisitem operasi mobile yang berbasis pada sistem
operasi Linux. Android pertama kali dikembangkan oleh perusahaan Startup di
California bernama Android Inc. Yang digawangi oleh Andy Rubin, Rich Miner,
Nick Sears, dan Chris White. Pada 2005, Google membeli Android dan
mengambil alih proses pengembangannya hingga saat ini. Google merilis versi
beta Android SDK (System Development Kit) pada November 2007.
Android menawarkan pendekatan yang menyeluruh dalam pengembangan
aplikasi. Artinya, satu aplikasi Android yang dibangun dapat berjalan
diberbagai perangkat yang menggunakan sistem operasi Android baik itu
smartphone, smartwatch, tablet, dan perangkat lainnya. Perkembangan teknologi
Android yang begitu juga tidak dapat dilepas dari peranan AOSP (Android Open
Sourch Project) yang bertanggung jawab dalam pengembangan sistem operasi
android dan dipimpin langsung oleh Google.
2.2 Kelebihan dan Kekurangan Android Studio
Pada tahun 2005, Google secara resmi telah membeli Android. Sehingga
sejak saat itu, pengembangan Android sepenuhnya berada di tangan Google
hingga saat ini. Namun Google tetap merilis kode sumber (source code) secara
terbuka, sehingga Android termasuk dalam software open source. Kelebihan
android menurut Azam (2017) sebagai berikut:
1. User Friendly, yang dimaksudkan disini adalah sistem Android sangat
mudah untuk dijalankan. Sama halnya pada sistem operasi Windows
yang ada pada komputer. Bagi anda yang belum terlalu terbiasa
dengan smartphone, anda hanya membutuhkan waktu sebentar saja
untuk bisa mempelajari sistem Android
2. Sangat mudah mendapat beragam notifikasi dari smartphone. Untuk
mendapatkannya, anda bisa mengatur beberapa akun yang anda miliki
seperti SMS, Email, Voice Dial, dan lainnya.
3. Keunggulan lainnya terdapat dari segi tampilan sistem Android yang
menarik dan tidak kalah baiknya dengan iOS (Apple). Hal ini
dikarenakan dari awal, Android memang mengusung konsep dan
teknologi iOS hanya saja Android merupakan versi murah dari iOS.
4. Sistem operasi ini memang memiliki konsep open source yang mana
pengguna dapat bebas mengembangkan sistem android versi
milikinya sendiri. Sehingga akan banyak sekali Custom ROM yang bisa
anda gunakan.
5. Tersedia beragam pilihan aplikasi menarik, bahkan hingga jutaan
aplikasi. Dari mulai aplikasi gratis hingga aplikasi berbayar. Anda
dapat mendownloadnya. langsung di Google Playstore yang tersedia
pada smartphone anda. Selain memiliki kelebihan, Android juga
memiliki kekurangan.
Berikut ini adalah beberapa kekurangan yang dimiliki Android menurut
Azam (2017):
1. Tidak Semua Smartphone Android Mendapatkan Update
Kekurangan pertama yang sering dirasakan pengguna Android adalah
tidak semua smartphone mendapatkan update. Karena walaupun
Google rajin memperbarui Android, semua update smartphone
kembali lagi pada pabrikan.
2. Terlalu Banyak Merk Dan Tipe
Yang satu ini sebenarnya bisa jadi kekurangan dan juga kelebihan.
Tapi menurut saya, lebih condong ke kekurangan. Karena terlalu
banyak tipedan merk, membuat penggunaannya jadi tidak konsisten.
Tidak seperti iPhone yang hanya memiliki 1 tipe saja dan
dikembangkan oleh 1 pabrikan, yaitu Apple.
3. Lag Dan Lemot
Karena banyak merk dan tipe smartphone Android, maka
spesifikasinya juga berbeda-beda. Smartphone Android yang
memiliki spesifikasi rendah biasanya akan lebih mudah lag dan lemot.
2.3 Penerapan Teknologi Android
Berikut ini merupakan penerapan teknologi Aplikasi pada Android adalah
sebagai berikut:
a. Penerapan Teknologi Android Dalam Proses Pembelajaran Di Sekolah
Banyak program di android yang mendukung proses pembelajaran,
bahkan ada buku digital maupun kamus digital. Salah satu program
yang mudah adalah peta Indonesia, dengan tujuan untuk mengetahui
provinsi serta letaknya (Verawati dan Enny Comalasari, 2019).
b. Penerapan Teknologi Android Dalam E-Laundry
Aplikasi sistem pemesanan jasa laundry (E-laundry) berbasis android
ini dapat digunakan sebagai pemesanan jasa laundry secara online
melalui aplikasi. Dengan adanya pembayaran secara digital dapat
memudahkan dalam proses transaksi pada pemesanan jasa laundry.
Aplikasi sistem pemesanan jasa laundry (E-laundry) dapat menjadi
sentral bagi para pelaku laundry (Mulyadi Bohati dkk, 2019).
c. Penerapan Pembayaran Non Tunai Pencucian Mobil
Aplikasi pembayaran non tunai untuk pengelolaan bisnis pencucian
mobil dengan memanfaatkan teknologi QR Code telah berhasil di
rancang dan dibangun dengan menggunakan metode waterfall yang
terdiri dari tahapan analisis, perancangan, pengkodean dan testing.
Pada tahapan analisis dihasilkan usulan proses bisnis yang baru yang
digambarkan dengan BPMN (Business Process Meodelling Notation),
kebutuhan fungsional, use case diagram, squence diagram dan class
analisis. Sementara itu pada tahapan perancangan dihasilkan
rancangan Database berupa ERD (Entity Relationship Diagram),
struktur tabel, class diagram, arsitektur aplikasi menggunakan MVC
(Model View Controller) dan rancangan antar muka. Kemudian pada
tahapan implementasi, telah dilakukan transformasi dari perancangan
tadi menjadi kode program yang di buat sedemikian rupa sehingga
dapat memeuhi kebutuhan dari aplikasi (Akbar, Rizki dkk 2019).

III. TUTORIAL
3.1 Setting Up Android Studio
Pada bagian ini kita akan mempelajari cara untuk menginstall Android
studio IDE pada Komputer anda. Android studio tersedia untuk seluruh sistem
operasi yang besar meliputi Windows, Mac OS X, dan Linux. Seperti yang telah
dijelaskan dalam sub-bab sebelumya.
Setelah selesai download file Android Studio maka yang pertama akan
muncul adalah halaman seperti pada gambar dibawah ini. Klik Next untuk
melanjutkan ke proses instalasi.
Gambar 1. Tampilan awal proses instalasi Android Studio 2020.3.1; laman unduh
(Windows OS 64bit: https://developer.android.com/studio)
Kemudian, pilih komponen tambahan untuk install Android Studio. AVD
(Android Virtual Device) fungsinya untuk mengkonfigurasi perangkat yang
dijalankan dengan emulator Android. Sesuaikan komponen tambahan yang
dipilih seperti pada gambar dibawah ini. Jika sudah klik Next untuk melanjutkan
instalasi

Gambar 2. Tampilan Pemilihan Komponen


Selanjutnya, pilih lokasi untuk install Android Studio pada perangkat komputer. Pada
tutorial ini, install diletakkan pada C:\ProgramFiles\Android\AndroidStudio.
Gambar 3. Penentuan Lokasi Instalasi Android Studio
Setelah menentukan lokasi instalasiAndroid Studio, klik Next untuk melanjutkan.
Lalu, menentukan nama aplikasi Android Studio yang akan ditampilan pada Start Menu.
Agar lebih mudah mencari aplikasi ini, sebaiknya menggunakan nama Android Studio.
Klik Install untuk melanjutkan proses.

Gambar 4. Pemilihan dan penentuan nama di folder Start Menu


Setelah menentukan nama aplikasi Android Studio, Maka selanjutnya memulai
Proses Instalasi Android Studio. Gambar dibawah ini adalah proses instalasi Android
Studio, tunggu hingga proses selesai.
Gambar 5. Proses Instalasi Android Studio
Jika telah selesai instalasi akan muncul tampilan dengan keterangan Completing
Android Studio Setup. Biarkan pilihan Start Android Studio tetap dalam kondisi default
atau terceklis dan klik Finish.

Gambar 6. Instalasi Android Studio Selesai


Setelah Finish, akan muncul jendela dengan opsi pilihan. Checklist opsi yang kedua
jika kalian belum pernah menginstall Android Studio IDE dan klik OK.
Gambar 7. Tampilan Persetujuan Instalasi Android Studio
Setelah klik OK, maka selanjutnya muncul tampilan oleh Android Studio
dengan tampilan WELCOME dan klik Next.

Gambar 8. Tampilan Welcome Pada Android Studio


Selanjutnya pilih Standard dan klik Next.
Gambar 9. Tampilan Type Instalasi Android Studio
Setelah itu akan muncul tampilan jendela SDK Component Setup. Pilih
component yang ingin diinstal/Update klik Next.

Gambar 10. Komponen Setup SDK


Setelah itu klik Finish.
Gambar 11. Pengaturan Pemeriksaan Android Studio
Kemudian akan tampil jendela Downloading Component, tunggu hingga proses
download selesai.

Gambar 12. Tampilan Proses Downloading Components Android Studio


Setelah proses download selesai, maka proses instalasi Android Studio telah
selesai, klik Finish.
Gambar 13. Tampilan Downloading Components Android Studio
Setelah itu maka muncul jendela baru dengan tulisan Welcome To Android
Studio.

Gambar 14. Tampilan Welcome To Android Studio


Maka aplikasi Android Studio telah berhasil di download dan dapat dijalankan pada
perangkat masing-masing.
3.2 Hello World Project
Aplikasi pertama yang akan dibangun adalah Hello World, yang umum digunakan
pada berbagai contoh bahasa pemrograman, termasuk Kotlin. Klik Start a New Android
Project pada android studio.
Gambar 15. Tampilan Utama Android Studio
Activity (aktivitas), adalah sebuah komponen aplikasi yang menyediakan layar
yang digunakan pengguna untuk berinteraksi guna melakukan sesuatu, misalnya memilih
nomor ponsel, mengambil foto, mengirim email atau menampilkan peta. Tiap activity
(aktivitas) diberi jendela untuk menggambar antar muka penggunannya. Jendela ini
biasanya mengisi layar dan berada diatas jendela lain. Pilih Empty Activity kemudian
klik Next.

Gambar 16. Tampilan Project Template Android Studio


Setelah memilih activity, langkah selanjutnya yaitu memberikan konfigurasi pada
project android yang ingin dibuat. Adapun yang harus di konfigurasi yaitu :
1. Name: Berisi nama project. Contoh: (SMIUNTIRTA)
2. Package name: Berisi nama perusahaan atau pembuat aplikasi. Contoh:
(om.example.smiuntirta)
3. Language: Pilih bahasa pemrograman yang akan digunakan, Java atau
Kotlin. Pada tutorial ini menggunakan Kotlin.
4. Minimum API Level: Tentukan API berapa yang akan digunakan. Pada
bulan April 2017 google merilis daftar versi OS yang banyak digunakan
tahun 2017 dan hasilnya Marshmallow (OS versi 6.0-6.0.1 dengan SDK
23) ada di urutan nomor satu. Jadi untuk minimum SDKnya kita pilih API
21 yaitu untuk versi Android 5.0 yaitu dari versi Lollipop ke atas.
Selanjutnya klik tombol Finish.

Gambar 17. Tampilan Konfigurasi Project Android Studio


Jika proses Gradle telah selesai, maka akan terbuka workspace project Android
Studio seperti gambar dibawah ini. File yang pertama kali muncul adalah
Activity_main.xml yang terletak didalam folder layout dalam folder res.
Gambar 18. Jendela Kerja Utama Project Android Studio (Design)
Selanjutnya, pada gambar dibawah ini memperhatikan tampilan strings.xml yang
terletak dalam folder values dalam folder res. File ini menyimpan data nama maupun
informasi rujukan yang digunakan dalam aplikasi yang dibuat. Dengan demikian, jika
terjadi perubahan nama maupaun informasi yang ada dalam aplikasi dikemudian hari,
maka cukup untuk menggantinya di file ini.

Gambar 19. Tampilan strings.xml


Dibawah ini merupakan tampilan yang memperlihatkan file MainActivity.java
yang berisikan kode program untuk activity yang dibuat dalam aplikasi. Pada file ini,
berbagai logika pemrograman dibutuhkan dalam aplikasi dapat diterapkan pada seluruh
file .java yang terdapat dalam project terletak dalam folder java.

Gambar 20. Tampilan MainActivity.Java


Dengan cara tersebut, maka cara untuk membuat hello world project telah selesai
dilakukan.
3.3 Setting Up AVDs
Pada sebelumnya telah didiberikan penjelasan singkat mengenai pengembangan
suatu aplikasi android. Meskipun belum ada kode khusus diterapkan dalam project
tersebut. Selanjutnya mencoba menjalankan aplikasi Android tersebut untuk melihat
tampilan hasilnya. Untuk itu diperlukan emulator (AVD). Langkah- langkah untuk
membuat dan mengatur Android Virtual Devices (AVDs).
Gambar 21. Shortcut AVD Manager
Untuk membuat dan mengatur AVDs, agar terhubung dengan smartphone. Kita
dapat menghubungkannya dengan menggunakan kabel data USB. Berikut merupakan
langkah-langkah agar AVDs terhubung dengan smartphone kita:
1. Koneksikan device kekomputer atau laptop dengan menggunakan kabel USB
2. Jika berhasil terkoneksi, selanjutnya aktifkan USB debugging pada device
dengan langkah-langkah berikut ini:
a. Klik setting pada smartphone
b. Klik setelan tambahan
c. Klik opsi pengembang
d. Kemudian, masukan kode verifikasi yang tertera pada smartphone
e. Selanjutnya aktifkan opsi pengembang, buka kunci OEM dan Debugging
USB.
Seperti gambar dibawah ini.
Gambar 22. Tampilan Pengaktifan USB Debbuging
f. Selanjutnya klik No devices yang terdapat pada gambar 21. Kemudian ganti
dengan devices atau smartphone yang terhubung .
3.4 Run Project di AVDs
Melanjutkan proses aplikasi yang telah disiapkan sebelumnya, kemudian saatnya
mencoba menjalankan aplikasi tersebut untuk melihat hasilnya. Cara agar dapat melihat
hasilnya adalah dengan klik Run seperti pada gambar dibawah ini.

Gambar 23. Menjalankan Aplikasi Hello World


Setelah menekan tombol Run, maka akan muncul tampilan seperti pada gambar 23.
Perangkat yang terhubung dan terdeteksi dengan Android Studio akan ditampilkan disini,
baik itu perangkat virtual maupun perangkat asli yang dimiliki. Setelah gradle build
running selesai maka hasilnya akan tampil seperti pada gambar 24. Melalui emulator ini
kita dapat mencoba aplikasi yang telah dibuat dan mengeceknya apakah sudah sesuai
atau belum.
3.5 Run Project di Real Device
Setelah menjalankan aplikasi yang dibuat secara langsung diperangkat yang nyata.
Berikut ini merupakan hasil akhir dari pembuatan aplikasi Hello World yang akan muncul
di layar smartphone masing masing.

Gambar 24. Tampilan Akhir Hello World di Perangkat Smartphone


Maka proses pembuatan aplikasi Hello World telah selesai dilakukan dan dapat
dijalankan pada perangkat smartphone masing-masing.

IV. KESIMPULAN
Berikut ini merupakan kesimpulan dari praktikum modul 2 mengenai pengenalan
Android Studio yaitu:
1. Dengan memahami definisi Android Studio, diharapkan praktikan dapat
mengetahui definisi Android.
2. Dengan memahami konsep dasar sistem operasi beserta setting up pada Android
Studio, diharapkan praktikan mampu menjalankan setting up pada masing masing
device.
3. Dengan membuat project sederhana Hello world beserta cara menjalankannya,
Diharapkan praktikan mampu membuat aplikasi sederhana pada android studio
baik melalui perangkat virtual maupun dengan perangkat nyata secara langsung.

V. TUGAS PENDAHULUAN
Kerjakan tugas pendahuluan berikut dengan seksama, cermat dan tepat untuk lebih
mengetahui mengenai android.
1. Jelaskan pengertian android secara detail!
2. Jelaskan secara singkat perkembangan android studio!
3. Sebutkan dan jelaskan penerapan teknologi android dibidang
kehidupan yang anda temui!
4. Sebutkan tujuan modul II!
5. Sebutkan dan jelaskan kelebihan Android Studio!
6. Sebutkan dan jelaskan kekurangan Android Studio!
7. Sebutkan dan jelaskan aplikasi android studio berbasis pendidikan!
8. Sebutkan dan jelaskan aplikasi android studio berbasis binis!
9. Sebutkan dan jelaskan aplikasi android studio berbasis sosial!
10. Sebutkan kesimpulan dari modul II!
PEMROGRAMAN DASAR KOMPUTER
MODUL III
ANDROID STUDIO IDE

LABORATORIUM TEKNIK INDUSTRI


FAKULTAS TEKNIK
UNIVERSITAS SULTAN AGENG TIRTAYASA
2021
MODUL III
ANDROID STUDIO IDE

I. PENDAHULUAN
Adanya penggunaan aplikasi dalam kegiatan sehari-hari memang semakin
banyak digunakan oleh masyrakat luas. Tidak hanya mahasiswa atau pelajar,
sekarang para penggiat bisnis pun menggunakan canggihnya teknologi sebagai
tempat mereka menjalankan usahanya (contoh dalam hal ini penggunaan aplikasi
sebagai media pembayaran).
Merancang sebuah aplikasi dapat menimbulkan keinginan untuk
membuatnya lebih menarik dengan melakukan berbagai improvement yang
tentunya dapat menambah nilai positif dari aplikasi yang dibuat. Salah satu cara
yang dapat ditempuh dalam upaya peningkatan kualitas dari sebuah aplikasi adalah
dengan mengetahui dan menguasai fitur-fitur apa saja yang ditawarkan,
penggunaan komponen dan tools yang beragam dan mendukung pembuatan
aplikasi yang akan dibuat, serta penggunaan sumber daya aplikasi yang tepat.
1.1 Tujuan Praktikum
Tujuan dari Modul III Pemrograman Dasar Komputer adalah sebagai
berikut:
a. Mampu mengetahui Android Studio IDE dan fitur-fiturnya.
b. Mengetahui komponen dan tools aplikasi android.
c. Mampu menggunakan tools-tools yang ada untuk membuat aplikasi.
d. Mengetahui sumber daya aplikasi android.
1.2 Alat dan Bahan
Adapun alat dan bahan yang perlu dipersiapkan dalam praktikum kali ini
adalah sebagai berikut:
1. Laptop yang sudah terinstall Android studio versi Artctic Fox // 2020.3.1.
2. Handphone android yang digunakan sebagai resources.
3. Modul sebagai bahan pendukung dalam praktikum.
1.3 Prosedur
Prosedur pelaksanaan dan penyelesaian Modul III antara lain:
1. Seluruh kelompok mengikuti sesi pelatihan software Android Studio
IDE melalui teleconference yang dilakukan oleh SMI.
2. Seluruh praktikan wajib mengikuti sesi tutorial mendesain interface
meggunakan elemen yang membentuk jendela kerja di Android Studio.
3. Seluruh praktikan diminta untuk membuat desain interface berdasarkan
aplikasi yang dibuat.
Praktikan wajib mengerjakan soal latihan Modul III tentang Android
Studio IDE dengan waktu yang telah ditentukan asisten.
4. Komunikasikan hasil pengolahan latihan dengan asisten dan dosen
pengampu.
5. Kumpulkan portofolio hasil latihan tersebut kepada asisten.

II. MEKANISME PROSES


2.1 Android Studio
Android studio merupakan salah satu modern code editor yang sangat
membantu dalam pembangunan suatu aplikasi android. Sebagai IDE
(Integrated Development Environment) resmi yang disarankan olehGoogle
dalam pembangunan aplikasi Android, perhatikan Gambar 1 yang
memperlihakan jendela kerja utama Android Studio.
A
B
C

E G

D
H

Gambar 1. Jendela kerja utama Android Studio


a. A - Menu Bar
Terletak di bagian paling atas dari jendela kerja Android Studio adalah
Menu bar yang menampilkan sekumpulan menu yang dapat dipilih, seperti
File, Edit, View, dan lain-lain. Di bawahnya terdapat menu toolbar yang
menampilkan icon-icon shortcut untuk melakukan aksi tertentu, seperti
Open, Save, Run, dan sebagainya. Selanjutnya, di bawah toolbar terdapat
navigation bar yang memperlihatkan lokasi file yang Anda buka dalam
bentuk suatu navigasi folder dan file.
b. B – Document Tabs
Android studio mampu membuka sejumlah file secara bersamaan untuk
diedit oleh pengembang. Setiap membuka file baru, document tab yang baru
akan dibentuk yang disertai dengan nama file tersebut. Tanda garis
bergelombang merah yang ada di bawah nama suatu file menunjukkan
bahwa terdapat kesalahan dalam file tersebut yang perluditangani sebelum
proyek dijalankan. Untuk melakukan perpindahan antarfile, cukup menekan
document tab file yang ingin dibuka atau dengan menekan tombol Alt+Left
Arrow dan Alt+Right Arrow.
c. C – Project Windows
Untuk membuka file yang diinginkan, dapat dilakukan secara langsung
dengan membuka folder yang mengandung file tersebut dan melakukan
double-click. Beberapa folder dan file yang akan sering digunakan adalah
folder Manifest yang menyimpan file AndroidManifest.xml, folder Java
yang menyimpan seluruh file .java, dan folder Res yang menyimpan seluruh
file resources yang digunakan dalam aplikasi.

Gambar 2. Tampilan Project Window


d. D – Bottom Sidebar
Merupakan sidebar yang dapat dibuka untuk menampilkan informasi
khusus yang dibutuhkan, seperti jendela Terminal, Messages, Event Log,
dan sebagainya. Jendela logcat yang dapat membantu dalam proses
debugging aplikasi juga dapat ditemukan di sidebar ini.
e. E – Editor Area
Merupakan area utama dimana kode program ditampilkan, ditulis, dan
diubah oleh pengembang.
Secara default editor akan menampilkan suatu panel tunggal yang
menyajikan isi dari file yang dibuka saat ini. Editor bisa dibagi menjadi
beberapa panel untuk membuka dan bekerja dengan beberapa file yang
berbeda. Untuk membaginya, klik kanan mouse pada salah satu tab file
dalam jendela editor, lalu pilih menu option Split Vertically atau Split
Horizontally sesuai dengan keinginan Anda. Untuk menghilangkan panel
yang telah dibagi, klik kanan mouse dan pilih opsi Unsplit atau Unsplit All.

Gambar 3. Editor yang dibagi menjadi tiga panel berbeda


f. F – Editor Gutter Area
Gutter area digunakan oleh editor untuk menampilkan informasi icons
dan controls. Beberapa informasi yang dirampilkan adalah debugging
breakpoint markers, bookmarks, dan line numbers. Line numbers tidak
ditampilkam secara default. Tetapi diaktifkan dengan melakukan klik kanan
pada mouse dan memilih menu option Show Line Numbers, atau buka
menu Help – Find Action, ketik dan pilih Show Line Numbers active
editors.
g. G – Validation and Marker Sidebar
Pada bagian atas validation sidebar, terdapat ikon kecil yang dapat
berubah warna dari hijau (tidak ada peringatan atau kesalahan yang
terdeteksi dalam file), kuning (terdapat peringatan yang terdeteksi), dan
merah (terdapat kesalahan yang harus diperbaiki). Dengan mengklik ikon
tersebut, akan ditampilkan suat pop up yang menyajikan informasi
masalah yang ditemukan dalam kode program yang dibuat oleh
pengembang.

Berwarna merah.

Gambar 4. Pop up disajikan dalam Validation and marker sidebar


h. H – Status Bar
Mengandung informasi tentang status sesi editing yang sedang
berlangsung (aktif). Informasinya meliputi posisi cursor saat ini dan format
encoding file yang dibuka (misalnya, UTF-8, ASCII, dan sebagainya).
2.2 Fitur-Fitur Android Studio
Android studio menyediakan berbagai fitur yang dapat dimanfaatkan
oleh pengembang untuk meningkatkan efektifitas dan produktifitasnya
dalam mengembangkan suatu aplikasi android. Ada beberapa fitur, seperti
code folding, autocompletion, dan lain sebagainya.
2.2.1 Code Folding
Code folding memungkinkan untuk menyembunyikan beberapa
baris kode program sehingga. Jika dilihat dari gambar di atas. Icon mata
panah ke bawah mengindikasikan awal dari suatu blok kode program yang
dapat disembunyikan (folded) dan icon panah ke atas mengindikasikan akhir
dari blok kode program yang dapat disembunyikan tersebut. Dengan
mengklik icon-icon ini kita dapat menyembunyikan maupun menampilkan
kembali blok kode program tersebut.
Gambar 5. Tampilan editor serta fitur code folding
2.2.2 Code Completion
Editor Android Studio memiliki kemampuan dan pengetahuan built-
in Java programming, termasuk classes dan methods yang membentuk
android SDK. Ada beberapa empat jenis code completion yang didukung
oleh Android Studio, sebagai berikut:
a. Default, code completion yang muncul secara otomatis ketika
mengetik.
b. Basic, code completion yang mirip seperti default, tetapi selain
saran juga menampilkan suatu jendela dokumen Javadoc. Untuk
mengaktifkannya, klik Ctrl+Space.
c. SmartType, code completion yang mirip seperti basic, tetapi
memberikan daftar saran yang lebih selektif. Dapat diaktifkan
dengan menekan tombol Ctrl+Shift+Space.
d. Cyclic Expand Word, yang akan menelusuri kata-kata yang telah
digunakan dalam dokumen dan memunculkannya sebagai saran.
Untuk melakukan penelusuran ke atas, gunakan tombol Alt+/
sementara untuk melakukan penelusuran ke bawah gunakan tombol
Alt+Shift+/
Bentuk lain dari autocompletion yang disediakan oleh editor
Andorid adalah statement completion yang dapat digunakan untuk
menambahkan tanda kurung dan kurung kurawal secara otomatis untuk
item-item tertentu. Statement completion dapat dipanggil dengan
menggunakan tombol Ctrl+Shift+Enter. Kita juga dapat meminta
editor untuk memberikan informasi tentang parameter yang diterima oleh
suatu method. Dengan posisi kursor berada di dalam kurung suatu method,
dengan menekan tombol Ctrl+P yang akan menampilkan parameter-
parameter yang dapat diterima oleh method tersebut.

Gambar 6. Menampilkan parameter yang diterima suatu fungsi


2.2.3 Code Generation
Selain melengkapi code saat diketik, editor Android studio juga
dapat membuatkan code tertentu untuk memudahkan pembangunanaplikasi.
Untuk membangkitkan code dapat menekan tombol Alt+Insert saat cursor
berada dalam file di mana code tersebut akan dibuat. Dengan memanfaatkan
fitur ini, kita dapat dengan mudah membuat suatuconstructor, getter, dan
setter maupun mengimplementasikan override methods yang dibutuhkan
dalam aplikasi yang dibuat.
2.2.4 Code Reformatting
Pada umumya, editor Android studio akan secara otomatis
melakukan format kode program berdasarkan ketentuan identing, spacing,
dan nesting atas pernyataan maupun blok kode yang ditambahkan. Namun,
jika ingin melakukan format kembali untuk keseluruhan isi file yang akan
dibuka, dapat menekan tombol Ctrl+Alt+Shift+L.
2.2.5 Inserting Live Templates
Untuk melihat live templates yang ada dan membuatnya, bisa
membuka File - Settings – Editor – Live Templates. Lalu pilih grup
template Plain, lalu klik tombol plus hijau di kanan atas dan pilih Live
Templates. Isi teks fields Abbreviation, Description, dan Template.
Sebelum template ini digunakan, harus menekan tombol Define.
Gambar 7. Membuat Live Templates
Selanjutnya, pilih Java dan seluruh scopes (Statement, Expression,
Declaration, dan seterusnya), dan tekan Apply dan OK untuk menutup
jendela live templates ini. Lalu, untuk menggunakan templates yang telah
dibuat, kita dapat menekan tombol Ctrl+J pada dokumen yang dikerjakan.
2.2.6 Commenting Codes
Komentar merupakan baris kode yang akan diabaikan olehcompiler,
tetapi mengandung pesan atau metadata penting. Untuk membuat suatu
baris dalam dokumen menjadi komentar dan sebaliknya klik Ctrl+/. Untuk
membuat suatu blok baris menjadi komentar dan sebaliknya, dapat menekan
tombol Ctrl+Shift+/.
2.2.7 Moving Codes
Terdapat dua jenis perpindahan, Move Statement (Up/Down) dan
Move Line (Up/Down). Move statement akan memindahkan beberapa baris
kode yang dipilih ke atas atau ke bawah dengan tetap memperhatikan
batasan dan ruang lingkup kpde yang akan dipindahkan tersebut, sementara
Move Line tidak memperhatikannya.
Move line akan memindahkan baris-baris kode tersebut sebagai teks biasa.
Untuk menggunakan Move Statement (Up/Down) dapat menekan
Ctrl+Shift+(Up/Down), sementara untuk menggunakan Move Line dapat
menekan Alt+Shift+(Up/Down).
2.2.8 Styling Codes
Gaya penulisan kode program (code style) antara satu pengembang
dengan pengembang lainnya berbeda. Beberapa shortcuts yang umum
digunakan adalah Ctrl+Alt+I untuk menerapkan indentasi padaa baris yang
dipilih, Ctrl+Alt+O untuk mengoptimalisasi import statement dan
Ctrl+Alt+L untuk menerapka code style tertentu. Untuk membuka menu
ini, klik File – Settings – Editor – Code Style.
2.2.9 Refactoring Codes
Proses refactoring ini dapat menghasilkan eror yang tidak
diinginkan. Untuk me-refactor code dapat menekan tombol
Ctrl+Alt+Shift+T atau melalui Refactor – Refactor this.
2.3 Komponen Aplikasi Android Studio
Berikut ini merupakan komponen dalam Android studio yang harus
diketahui oleh programmers.
2.3.1 Activities
Activity merupakan modul fungsionalitas yang biasanya
berhubungan langsung dengan suatu layar user interfcace beserta
fungsionalitas di dalamnya.
2.3.2 Intents
Intents merupakan mekanisme dimana satu activity dapat
menjalankan activity lainnya dan menerapkan alur proses yang dibutuhkan
dalam aplikasi.
2.3.3 Broadcast Intents
Broadcast Intents merupakan suatu intents sistem yang dikirim ke
seluruh aplikasi yang telah mendaftar pada suatu broadcast receiver yang
diinginkan.
2.3.4 Broadcast Receivers
Broadcast receivers merupakan mekanisme dimana aplikasi dapat
memberikan tanggapan atas broadcast intents yang diterimanya. Broadcast
receivers berjalan secara background dan tidak memilik suatu user
interface.
2.3.5 Services
Service merupakan proses-proses yang berjalan secara background
dan tidak memiliki user interface. Service dapat diatur dari activities,
broadcast receiver, atau dari services lainnya.
2.3.6 Content Providers
Content providers menerapkan suatu mekanisme untuk berbagi data
di antara aplikasi android. Content providers memiliki kemampuan untuk
menambah, menghapus, dan melakukan query data (tergantung pada
permissions yang diberikan).
2.3.7 Application Manifest
File Android Manifest (AndroidManifest.xml) merupakan perekat
yang mengumpulkan beragam elemen yang membentuk suatu aplikasi
android. Dalam file XML inilah, aplikasi mendeskripsikan activities,
service, broadcast receivers, data providers¸dan permissions yang
membangun keseluruhan aplikasi.
2.3.8 Application Resources
Selain file manifest dan file DEX yang mengandung byte code, suatu
aplikasi android juga biasanya memiliki kumpulan resources files. File-file
ini mengandung sumber daya (resources). Secara default file ini disimpan
dalam subdirectory/res dari hierarki project aplikasi.
2.3.9 Application Context
File manifest dan resources aplikasi bergabung membentuk suatu
application context. Application context ini, direpresentasikan oleh class
context dapat digunakan dalam kode program aplikasi untuk memperoleh
akses ke resources aplikasi secara runtime.
Selain itu, berbagai methods berbeda juga dapat dipanggil dalam
suatu application context untuk memperoleh informasi dan membuat
perubahan pada lingkungan aplikasi saat runtime.
2.4 Sumber Daya Aplikasi Android
Sumber daya (resources) merupakan salah satu komponen terpenting dari
suatu aplikasi. Android SDK mengharuskan resources aplikasi diletakkan pada
subdirectory yang khusus, yakni /src/main/res.

Gambar 8. Beberapa isi dari res subdirectory


Android mengelempokkan resources menjadi 12 grup yang dikategorikan
berdasarkan tipenya, yaitu:
a. Anim, animasi berupa transisi suatu objek, seperti rotasi dan
perpindahan, serta perubahan ukuran suatu objek.
b. Animator, animasi yang berkaitan dengan modifikasi properties dari
suatu objek, seperti warna bakground dan nilai alpha suatu objek.
c. Color, menerapkan suatu warna yang dinamis bagi suatu objek.
d. Drawable, berisi gambar-gambar yang dapat ditampilkan dalam layar
aplikasi.
e. Interpolator, memengaruhi tingkat kecepatan perubahan dalam suatu
animasi.
f. Layout, mendefinisikan arsitektur antarmuka dalam suatu activity atau
suatu komponen dari suatu UI (User Interface).
g. Menu, mendefinisikan suatu menu aplikasi (Option, context, dsb).
h. Mipmap, digunakan untuk menyimpan gambar-gambar yang dapat
diskalakan selama animasi.
i. Raw, berisikan resources yang tidak termasuk dalam resources group
lainnya.
j. Transition, berisikan efek transisi yang dapat diterapkan dari satu scene
ke scene lainnya.
k. Values, berisikan nilai-nilai, seperti strings, integers, Booleans.
l. XML, berisikan sembarang resources yang memiliki format xml.
III. TUTORIAL
Berikut ini adalah tutorial dalam mengetahui bagaimana cara kerja tools-
tools yang ada pada Android studio:
1. Klik new project lalu klik empty activity kemudian ubah nama aplikasi,
pilih Kotlin sebagai language dan pilih minimum SDK API 21: Android
5.0 (Lollipop), lalu Finish.

Gambar 9. Pilihan language dan SDK


2. Disini kita akan coba membuat text view “Hello World”. Klik dibagian
activity_main.xml. Setelah itu masukkan text yang akan dibuat. Selain
membuat teks, di sini kalian bisa untuk mengatur posisi teks yang akan
dibuat dan dimunculkan di real device masing-masing.
Gambar 10. Membuat text view Hello World
Coding:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_height="match_parent"
tools:context=".MainActivity">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>
3. Selanjutnya, untuk membuat button, klik activity_main.xml, lalu ketik
<Button maka akan muncul tampilan seperti gambar di bawah. Di sini kita
coba membuat button atau tombol “masuk”.

Gambar 11. Membuat button di Android Studio


Coding:
<TextView

android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />

<Button
android:id="@+id/txtMasuk"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Masuk"
android:inputType="text" />
}
4. Kemudian, untuk membuat edit text, klik activity_main.xml, lalu ketik
<EditText maka akan muncul tampilan seperti gambar di bawah. Di sini
kita menggunakan hint atau kata petunjuk “Lupa Kata sandi?”. Tampilan
design bisa dilihat di samping.

Gambar 12. Membuat Edit Text di Android Studio


Coding:
<Button

android:id="@+id/txtMasuk"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Masuk"
android:inputType="text" />

<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Lupa Kata Sandi?"
android:inputType="text"
tools:layout_editor_absoluteX="53dp"
tools:layout_editor_absoluteY="60dp" />
}
5. Jika sudah, maka kalian bisa langsung me-run hasil yang telah dibuat,
dengan mengklik gambar atau icon ini. Hal yang perlu diperhatikan adalah
pastikan perangkat yang akan digunakan sebagai real device sudah
terkoneksi ke Android Studio.
Gambar 13. Menjalankan Aplikasi di Real Device
6. Jika berhasil, maka tampilan akan seperti ini.

Gambar 14. Tampilan aplikasi di Real Device

IV. KESIMPULAN
Android Studio merupakan IDE yang palin sering digunakan untuk
melakukan pengembangan aplikasi Android. Di sini terbagi menjadi beberapa
bagian, yaitu menu bar, document tabs, project windows, bottom sidebar, editor
area, dan sebagainya. Android studio memberikan banyak kemudahan dengan
banyaknya shortcut key yang membantu dalam pengembangan aplikasi android,
seperti code folding, code completion, code reformatting, commenting code,
refactoring code. Dalam pengembangan aplikasi.
V. TUGAS PENDAHULUAN

1. Jelaskan pengertian programming.


2. Jelaskan alasan penggunaan android studio dalam praktikum ini.
3. Jelaskan lima bagian pada jendela kerja utama Android studio.
4. Apakah perbedaan antara Editor area dan Editor Gutter Area.
5. Jelaskan fungsi dari Split Vertically dan Split Horizontally.
6. Sebutkan tiga icons yang ada pada folding outline.
7. Jelaskan fungsi dari Code folding.
8. Jelaskan perbedaan antara Commenting codes dan Styling codes.
9. Apakah keunggulan menggunakan dari Android Studio.
10. Sebutkan pengelompokkan resources dalam resource directory.
PEMROGRAMAN DASAR KOMPUTER
MODUL IV
ACTIVITIES DAN INTENTS

LABORATORIUM TEKNIK INDUSTRI


FAKULTAS TEKNIK
UNIVERSITAS SULTAN AGENG TIRTAYASA
2021
MODUL IV
ACTIVITIES DAN INTENTS

I. PENDAHULUAN
Saat menjalankan suatu aplikasi berbasis Android, maka yang kita lihat
adalah layar user interface beserta fungsionalitas yang terdapat didalamnya.
Untuk menampilkan user interface maka dibutuhkan sebuah jendala yang
disebut, activity. Activity menyediakan jendela tempat aplikasi menggambar user
interface-nya. Activity biasanya mengisi layar, tetapi bisa saja lebih kecil dari
layar dan mengambang di atas activity lain. Umumnya, satu activity
menerapkan satu layar dalam aplikasi. Misalnya, salah satu aktivitas aplikasi
mungkin menerapkan layar “Beranda”, sementara aktivitas lainnya menerapkan
layar “Profil”.
Sebagian besar aplikasi berisi beberapa layar, yang artinya bahwa aplikasi
terdiri dari banyak activity. Biasanya, satu activity dalam aplikasi ditetapkan
sebagai aktivitas utama, yang merupakan layar pertama yang muncul saat
pengguna meluncurkan aplikasi tersebut. Setiap activity dapat memulai activity
lain untuk melakukan tindakan yang berbeda. Misalnya, activity utama dalam
aplikasi WhatsApp dapat memberikan layar yang menampilkan daftar chat
terbaru. Dari sana, activity utama dapat meluncurkan activity lain yang
menyediakan layar untuk tugas seperti menulis chat baru dan membuka chat
satu per satu.
Ketika pengguna aplikasi memulai sebuah aplikasi, untuk meningatkan
kualitas penggunaan aplikasi, maka dibutuhkan activity lain untuk mendukung
fungsi dari aplikasi tersebut. Dalam hal ini, untuk memulai activity lainnya pada
aplikasi tesebut dibutuhkan intent. Intent sendiri memiliki tiga fungsi mendasar
yaitu, memulai activity, memulai layanan, dan mengirimkan broadcast. Setiap
intent memiliki fungsinya masing-masing pada sebuah aplikasi. Untuk
membedakan penggunaan masing-masing intent, maka diperlukan intent-filter.
1.1 Tujuan Praktikum
Tujuan praktikum pada modul IV Activites dan Intents adalah sebagai
berikut:
1. Mampu memahami konsep mengenai activities dan activity lifecycle
pada pengembangan aplikasi menggunakan Android Studio
2. Mampu membuat dan mendeklarasikan activity pada aplikasi yang
dikembangkan melalui Android Studio.
3. Mampu memahami konsep mengenai intents dan penggunaan intent-filters pada
aplikasi yang dikembangkan melalui Android Studio.
4. Mampu membuat button serta mengembalikan hasil dan mengirimkan data
menggunakan objek intent pada aplikasi yang dikembangkan melalui Android
Studio.
1.2 Alat dan Bahan
Berikut ini daftar alat dan bahan yang akan digunakan praktikan pada
pelaksanaan praktikum modul IV Activites dan Intents:
1. Alat : Software Android studio versi Artctic Fox // 2020.3.1.
2. Bahan : Modul praktikum
1.3 Prosedur
Berikut ini merupakan prosedur pelaksanaan dan penyelesaian IV
Activites dan Intents:
1. Praktikan membuat dan mendeklarasikan sebuah activity pada filemanifest
Android.
2. Praktikan membuat sebuah button sebagai intent dan mendefinisikan
penggunaan method pada button tersebut.
3. Praktikan membuat intent-filter untuk setiap activites pada file manifest
Android.
4. Praktikan melakukan peng-coding-an untuk membangun sebuah intent
yang bertujuan untuk mengembalikan hasil suatu activity.
5. Praktikan melakukan peng-coding-an untuk membangun sebuah intent
yang bertujuan untuk mengirimkan data menggunakan objek intent.
II. MEKANISME PROSES
2.1 Activity
Activity adalah sebuah jendela yang berisi antamuka pengguna dari suatu
aplikasi. Sebuah aplikasi dapat memiliki satu atau lebih activities. hampir semua
activities memerlukan interaksi dengan user karena activity menangani
pembentukan jendela aplikasi dan berbagai komponen UI (user interface) did
dalamnya. Dari saat sebuah activity muncul di layar hingga saat activity tersebut
hilang, terdapat sejumlah tahapan yang dilalui, yang dinamakan activity’s
lifecycle. Dalam memulai activity dapat menggunakan method startActivity().
2.1.1 Activity’s Lifecycle
Sebagaimana yang telah dijelaskan sebelumnya, class activity memiliki
sejumlah tahapan siklus hidup (lifecycle) yang bertindak sebagai penanganan
kejadian (event handlers) saat keadaan (state) suatu activity berubah. Gambar
dibawah memperlihatkan siklus hidup dari suatu activity semenjak dipanggil
hingga dihancurkan.
Activity
Launched

onCreate()

onStart() onRestart()

User navigates to
onResume()
the activity

App Process Activity


Killed Runnin
g

Another activity comes


into foreground User returns to the
activity
Apps with higher
onPause()
priority need memory

The activity is no
longer visible User navigates to
the activity

onStop()

The activity is finishing or


being destroyed by the system

onDestroy()

Activity
Shut Down

Gambar 4.1 Activity Lifecycle


(Sumber: http://developer.android.com/)
Beberapa metode penting yang mendefinisikan keadaan (state) dari
class Activity Android antara lain:
a. onCreate (Bundle savedInstanceState)
Dipanggil saat activity dibentuk pertama kali dan merupakan lokasi terbaik
untuk meletakkan tugas awal yang dikerjakan.
b. onRestart()
Dipanggil saat activity akan di-restart setelah sebelumnya dihentikan oleh
runtime system.
c. onStart()
Selalu dipanggil segera setelah pemanggilan metode onCreate() atau
onRestart(). Mengindikasikan activity akan menjadi terlihat (visible) oleh user.
d. onResume()
Mengindikasikan bahwa activity sekarang berada di posisi paling atas dari
tumpukan activity yang ada dan bahwa activity tersebut siap berinteraksi dengan
user.
e. onPause()
Mengindikasikan bahwa activity sebelumnya akan segera menjadi foreground
activity. Langkah-langkah yang dapat disimpan dalam method ini seperti
menyimpan data tetap (persistent) yang diperlukan oleh suatu activity dan
menghentikan tugas-tugas yang memakan banyak sumber daya seperti animasi.
f. onStop()
Mengindikasikan bahwa activity sudah tidak terlihat lagi oleh user
g. onDestroy()
Activity yang dihancurkan, baik secara sukarela karena telah menyelesaikan
tugasnya dan telah memanggil metode finish() atau karena runtime system
menghentikannya untuk membebaskan memori atau perubahan konfigurasi
terjadi (seperti perubahan orientasi layar perangkat dari potrait menjadi
landscape dan sebaliknya).
2.2 Intents
Suatu aplikasi Android dapat terdiri dari 0 atau lebih activities. Bila
aplikasi yang dibangun memiliki lebih dari satu activity, sering kali diperlukan
cara untuk bernavigasi dari satu activity ke activity lainnya. Di Android,
bernavigasi antara satu activity ke activity lainnya dilakukan dengan
menggunakan intent. Dengan demikian, kegunaan utama dari suatu intent
adalah untuk menjalankan activities dan services. Intent juga merupakan objek
perpesanan yang bisa digunakan untuk meminta tindakan dari komponen
aplikasi.
Meskipun intent mempermudah komunikasi antar komponen dengan
beberapa cara, ada tiga kasus penggunaan yang mendasar:
a. Memulai aktivitas
Activity mempresentasikan satu layar dalam aplikasi. Bisa dimulai instanci
baru Activity dengan meneruskan Intent ke startActivity(). Intent
menjelaskan aktivitas yang akan dimulai dan membawa data yang
diperlukan.
b. Memulai layanan
Service adalah komponen yang melakukan operasi di latar belakang tanpa
antarmuka pengguna. Dengan Android 5.0 (API level 21) dan yang lebih
baru, bisa memulai layanan dengan JobScheduler. Untuk versi sebelum
Android 5.0 (API level 21) bisa memulai layanan menggunakan metode
class Service. Bisa memulai layanan untuk melakukan operasi satu-kali
(misalnya mendownload file) dengan meneruskan intent ke starService().
c. Mengirimkan siaran
Siaran adalah pesan yang bisa idterima aplikasi apa saja. Sistem
mengirimkan beragam siaran untuk peristiwa sistem, seperti saat sistem
melakukan booting atau perangkat mulai mengisi daya. Bisa mengirimkan
siaran ke aplikasi lain dengan meneruskan inetnt ke sendBroadcast() atau
sendOrderBroadcast().
2.2.2 Tipe Intent
Ada dua tipe intent:
a. Intent eksplisit, menentukan aplikasi mana yang akan memenuhi persyaratan
intent, dengan menyediakan nama paket aplikasi target maupun nama class
komponan yang sepenuhnya memenuhi syarat.
b. Intent implisit, tidak menetapkan komponen tertentu melainkan
mendeklarasikan tindakan umum yang akan dilakukan, yang memungkinkan
komponen aplikasi lain untuk menanganinya.

Gambar 4.2 Cara intent implisit disampaikan melalui sistem untuk memulai aktivitas lain
(Sumber: http://developer.android.com/)
Ket :
[1]Aktivitas A membuat sebuah intent dengan keterangan tindakan dan
meneruskannya ke startActivity.
[2]Sistem android akan menelusuri semua aplikasi untuk filter intent yang cocok
dengan intent tersebut. Jika ada yang cocok.
[3]Sistem akan memulai aktivitas mencocokkan (aktivitas B) dengan memanggil
metode onCreate() dan meneruskan ke intent.

2.2.3 Button
Button merupakan widget digunakan untuk melaksanakan perintah intent.
Terdapat beberapa atribut untuk view Button tersebut, yakni:
a. android:layout_width, untuk mengukur ukuran lebar sebuah view
b. android:layout_height, untuk mengukur ukuran tinggi sebuah view
c. android:layout_id, yang memberikan penanda identifikasi unik untuk
view
d. android:layout_centerVertical, menentukan posisi pusat vertical sebuah
view di dalam suatu layout yang mana menerima dua parameter, yaitu true
dan false.
e. android:layout_centerHorizontal, menentukan posisi pusat horizontal
sebuah view di dalam suatu layout yang mana menerima dua parameter, yaitu
true dan false.
f. android:layout_below, menentukan posisi sebuah view secara relatif
dibawah view lainnya.
g. android:text, menampilakn isi teks untuk sebuah view.
h. android:onClick, menentukan aksi yang dilakukan pada saat view
tersebut ditekan.
2.2.4 Intent Filters
Elemen <intent-filter> mendefinisikan bagaimana cara activity yang satu
dipanggil oleh activity lainnya. Hal ini memungkinkan aplikasi untuk
mendeklarasikan sejumlah intents yang dapat dipenuhi untuk dilakukan. Elemen
intent-filter ini dideklarasikan dalam file manifest aplikasi.
Untuk mendemonstrasikan beberapa perilaku filter intent , berikut adalah
contoh dari file manifest aplikasi berbagi jejaring sosial:
<activity android:name="MainActivity">
<!-- This activity is the main entry, should appear in app
launcher -->
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER"
/>
</intent-filter>
</activity>
<activity android:name="ShareActivity">
<!-- This activity handles "SEND" actions with text data -->
<intent-filter>
<action android:name="android.intent.action.SEND"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="text/plain"/>
</intent-filter>
<!-- This activity also handles "SEND" and "SEND_MULTIPLE" with
media data -->
<intent-filter>
<action android:name="android.intent.action.SEND"/>
<action
android:name="android.intent.action.SEND_MULTIPLE"/>
<category android:name="android.intent.category.DEFAULT"/>
<data
android:mimeType="application/vnd.google.panorama360+jpg"/>
<data android:mimeType="image/*"/>
<data android:mimeType="video/*"/>
</intent-filter>
</activity>

Aktivitas pertama, MainActivity merupakan titik masuk utama aplikasi-


aktivitas yang terbuka saat pengguna pada awalnya meluncurkan aplikasi
dengan icon peluncur:
 Tindakan Action_Main menunjukkan ini adalah titik masuk utama dan
tidak mengharapkan data intent apa pun.
 Kategori Category_Launcher menunjukkan bahwa ikon aktivitas
tersebut harus ditempatkan dalam peluncur aplikasi sistem. Jadi elemen
<activity> tidak menetapkan ikon dengan icon, maka sistem akan
menggunakan ikon dari elemen <application>.
Aktivitas kedua, ShareActivity diamksudkan untuk memudahkan berbagi
teks dan konten media. Walaupun pengguna mungkin memasuki aktivitas ini
dengan mengarah ke aktivitas dari MainActivity, pengguna juga bisa
memasukkan ShareActivity secara langsung dari aplikasi lain yang
mengeluarkan intent implisit yang cocok dengan salah satu kedua filter intent.
III. TUTORIAL
1. Buat project baru dengan nama “PDKPraktikum4”
2. Buka file “.xml” atau “activity_main.xml”.
3. Menghapus <TextView default yang sudah ada pada Android Studio.

Gambar 4.3 Menghapus <TextView default

4. Mengubah ConstraintLayout menjadi LinearLayout.

Gambar 4.4 Mengubah ConstraintLayout menjadi LinearLayout.

Mengubah ConstraintLayout menjadi LinearLayout bertujuan untuk lebih


mudah mengatur tata letak dari komponen-komponen yang dimasukan.
5. Membuat EditText. Pada Coding area buatlah coding seperti di bawah ini:
Gambar 4.6 Coding EditText

6. Buka file layout “activity_main.xml”.


7. Menambahkan Button. Pada coding area buatlah coding seperti di bawah
ini:

Gambar 4.7 Penambahan button pada activity_main.xml


Membuat Button berfungsi untuk mengirimkan Text yang dimasukan sehingga
dapat ditampilkan di activity yang berbeda.
8. Buat activity baru dengan nama “Display Activity”. Secara default, file
“DisplayActivity.kt” dan “activity_display.xml” akan terbentuk secara
otomatis. Untuk membuat file xml yang baru dengan cara Klik kanan pada
Layout > New > Layout Resource File.
9. Membuat TextView pada “activity_display.xml”. Buatlah coding seperti di
bawah ini:

Gambar 4.8 Membuat TextView pada activity_display.xml

10. Membuat file kotlin class baru dengan menggunakan cara Klik Java >
Klik kanan pada Com > New > Kotlin file class > Beri nama
“DisplayActivity) > Pilih Class. Masukan coding seperti gambar di bawah ini:

Gambar 4.9 Kotlin Class Baru


Masukan CompatActivity dan ketik onCreate yang berfungsi untuk
memanggil display ke-2 yang sudah dibuat.
11. Setiap activity yang baru perlu dideklarasikan pada file
“AndroidManifest.xml”.

Gambar 4.10 Android Manifest

12. Buka class “MainActivity.kt” buatlah fungsi baru yaitu SendMessage


seperti pada gambar di bawah ini:

Gambar 4.11 Membuat Fungsi Baru “SendMessage”


Membuat fungsi SendMessage yaitu untuk mengirimkan text yang akan dibuat
untuk dikirimkan ke Acrivity yang ke-2. Intent berfungsi untuk memanggil Activity yang ke-2 dan
di saat yang sama Intent ini mengirimkan data text dengan menambahkan intent.apply.
Gambar 4.12 Menambahkan intent.apply

13. Masukan Variable Message pada putExtra. Pada coding area buatlah
coding seperti di bawah ini:

Gambar 4.13 Variable Message pada putExtra


Tagname pada putExtra berfungsi untuk memberikan sebuah judul sehingga
nanti tag ini akan ditulis pada Activity sebagai penanda bahwa intent yang
dimasukkan adalah yang sudah diberi nama.
14. Membuat Method pada “MainActivity.kt” untuk Button yang akan
mengeksekusi sendMessage.

Gambar 4.14 Button untuk mengeksekusi sendMessage

15. Membuka file “DisplayActivity.kt” Buatlah method untuk menampilkan


text pada TextView.
Gambar 4.15 Method Untuk Menampilan Text Pada Textview

Pada method ini juga diketikan coding intent untuk memanggil data dari
intent yang kemudian akan di masukkan ke dalam variable message.
16. Setelah coding selesai Run aplikasi dengan icon shortcut Run.
17. Tampilan awal pada device atau emulator akan seperti dibawah ini.

Gambar 4.16 Tampilan Awal pada Device atau Emulator


18. Tampilan kedua coba ketikan kalimat “Praktikum PDK Modul 4” pada
device atau emulator akan seperti dibawah ini.

Gambar 4.17 Tampilan Kedua pada Device atau Emulator

19. Tampilan ketiga hasil ketikkan kalimat “Praktikum PDK Modul 4” pada
device atau emulator akan seperti dibawah ini.

Gambar 4.18 Tampilan Ketiga pada Device atau Emulator


IV. KESIMPULAN
Berikut ini merupakan kesimpulan dari pelakasaan praktikum PDK modul
IV Activities dan Intents:
1. Dengan mempelajari pembuatan dan pendeklarasian activity, diharapkan
praktikan dapat membuat aplikasi yang memiliki beberapa activities.
2. Dengan mempelajari pembuatan intent, diharapkan praktikan dapat membuat
aplikasi yang dapat mengembalikan hasil dan mengirimkan data dengan objek
intent.
V. TUGAS PENDAHULUAN
1. Jelaskan yang dimaksud dengan Activity menurut yang Anda ketahui!
2. Gambarkan dan jelaskan life cycle dari Android Activity!
3. Jelaskan langkah dalam pembuatan activity baru pada aplikasi Android!
4. Jelaskan perbedaan dari tipe intent eksplisit dengan tipe intent imsplisit!
5. Jelaskan yang dimaksud dengan Intent menurut yang Anda ketahui!
6. Apa saja atribut yang terdapat pada view Button? Jelaskan!
7. Apa yang dimaksud dengan intent filters?
8. Jelaskan tiga kasus penggunaan yang mendasar pada intent!
9. Buatlah aplikasi sederhana dengan ketentuan minimal dua activities dan1
intent!
10. Sebutkan method yang digunakan pada class Activity Android (min 5)!
PEMROGRAMAN DASAR KOMPUTER
MODUL V
FRAGMENTS

LABORATORIUM TEKNIK INDUSTRI


FAKULTAS TEKNIK
UNIVERSITAS SULTAN AGENG TIRTAYASA
2021
MODUL V
FRAGMENTS

I. PENDAHULUAN
Android Studio merupakan aplikasi Integrated Development Environment
(IDE) untuk pembuatan aplikasi Android. Aplikasi Android Studio juga
memberikan fitur lebih banyak dalam membuat aplikasi Android dan salah satu
hal penting dalam pembuatansebuah aplikasi merupakan desain sebagai user
interface. User interface adalah bagian visual dari website, aplikasi software atau
device hardware yang memastikan bagaimana seorang user berinteraksi dengan
aplikasi atau website tersebut serta bagaimana informasi ditampilan di layarnya.
User interface sendiri menggabungkan konsep desain visual, desain interasi, dan
infrastruktur informasi. Tujuan dari user interface adalah untuk meningkatkan
usability dan tentunya user experience. Fragment adalah sebuah bagian dari user
interface atau perilaku sebuah aplikasi yang dapat ditempatkan pada activity yang
memungkinkan untuk mendesain activity yang modular. atau bisa dikatakan
fragment semacam sub-activity.
1.1 Tujuan Praktikum
Tujuan dari Modul V Pemrograman Dasar Komputer antara lain:
a. Mampu mengetahui dan memahami fregments dan fragment lifecycle
pada Android Studio IDE.
b. Mampu mengetahui dan menambahkan fregments pada Android
Studio IDE.
c. Mampu mengetahui dan memahami interaksi antar fregments pada
Android Studio IDE.
d. Mampu mengetahui dan memahami beberapa fregments khusus pada
Android Studio IDE.
1.2 Alat dan Bahan
Adapun alat dan bahan dari dari praktkum Pemrograman Dasar Komputer
Modul V antara lain:
1. Mempersiapkan Laptop atau PC yang sudah terinstall aplikasi Android
Studio ver. 3.6.2.
2. Mempersiapkan Handphone atau gadget berbasis Android.
3. Mempersiapkan materi Fragment Android Studio sebagai acuan
pelaksanaan praktikum.
1.3 Prosedur
Prosedur pelaksanaan dan penyelesaian Modul V antara lain:
1. Seluruh kelompok mengikuti sesi pelatihan software Android Studio
IDE melalui teleconference yang dilakukan oleh SMI.

2. Seluruh praktikan wajib mengikuti sesi tutorial mendesain interface


meggunakan elemen yang membentuk jendela kerja di Android Studio.

3. Seluruh praktikan diminta untuk membuat desain interface


berdasarkan aplikasi yang akan dibuat.
4. Praktikan wajib mengerjakan soal latihan Modul V tentang Fragments
dengan waktu yang telah ditentukan asisten.
5. Komunikasikan hasil pengolahan latihan dengan asisten dan dosen
pengampu.
6. Kumpulkan portofolio hasil latihan tersebut kepada asisten.

II. MEKANISME PROSES


2.1 Fragments
Fragments adalah mini-activities yang dapat ditambahkan atau dihilangkan
dari sebuah activity. Fragments dapat direpresentasi sebagai perilaku atau
sebagian antarmuka pengguna dalam suatu activity. Fragments merupakan
bagian dari sebuah activity yang mana sebuah fragments tidak akan ada apabila
tidak ada sebuah activity karena fragments membutuhkan akses dari activity
untuk dapat dijalankan.
Fragments mulai diperkenalkan sejak Android 3.0 (API level 11) ke atas
dengan tujuan utama untuk mendukung desain antarmuka (user interface) yang
dinamis dan fleksibel pada layar besar. Maka lebih banyak ruang untuk
mengombinasikan dan bertukar komponen UI.
Fragment memungkinkan desain seperti itu tanpa perlu mengelola perubahan
kompleks pada hierarki tampilan. Dengan membagi layout aktivitas menjadi
beberapa fragmen, dan dapat diubah penampilan aktivitas saat waktu proses
dan mempertahankan perubahan yang dikelola oleh aktivitas. Mode-mode
tersebut sudah tersedia secara luas melalui library dukungan fragment. Ada
dua cara untuk menempelkan sebuah fragment ke activity yaitu secara dinamis
menggunakan Java dan secara statis (manual) dengan XML.
Terdapat beberapa hal yang perlu dipahami tentang fragment:
1. Sebuah Fragment merupakan kombinasi sebuah layout XML dan kelas
java yang mirip dengan sebuah Activity.
2. Dengan menggunakan support library, fragment dapat mendukung hampir
semua versi Android.
3. Fragment dapat dipakai berulang kali didalam activity.
4. Fragment merupakan komponen utuh yang memiliki view, event, dan
logic (meskipun tetap membutuhkan sebuah fragment agar dapat bekerja).
activity menjadi navigational container yang bertugas untuk melakukan
navigasi ke activity lain, menampilkan fragment dan mengirim data.
Berikut merupakan beberapa kasus yang dapat diselesaikan oleh fragment:
1. Penggunaan Komponen View dan Logic Berulang Kali
Fragment dapat dipakai untuk menampilkan data atau melakukan event
tertentu dibeberapa activity berbeda.
2. Dukungan Untuk Tablet
Dibeberapa aplikasi, versi tablet dari sebuah activity memberikan layout
yang berbeda dari versi handphone yang juga berbeda dari versi TV.
Fragment memungkinkan activity untuk menggunakan fragment dalam
membuat antarmuka sesuai dengan perangkat yang membukanya.
3. Orientasi Layar
Seringkali dalam aplikasi, versi portrait dan landscape sebuah aplikasi
memiliki layout yang berbeda. Fragment memungkinkan kedua orientasi
tersebut untuk menggunakan tampilan yang berbeda menggunakan elemen
yang sama.
Pada gambar dibawah mencontohkan bagaimana dua modul UI yang
ditentukan oleh fragment bisa digabungkan ke dalam satu aktivitas untuk
desain tablet, namun dipisahkan untuk desain handset.

Gambar 5.1 Dua modul UI yang ditentukan oleh fragment


Contoh diatas merupakan aplikasi bisa menyematkan dua fragment dalam
Aktivitas A, saat berjalan pada perangkat berukuran tablet. Akan tetapi, pada
layar berukuran handset, ruang untuk kedua fragment tidak cukup, sehingga
Aktivitas A hanya menyertakan fragment untuk daftar artikel, dan saat
pengguna memilih artikel, Aktivitas B akan dimulai, termasuk fragment kedua
untuk membaca artikel. Sehingga, aplikasi mendukung tablet dan handset
dengan menggunakan kembali fragment dalam kombinasi berbeda, seperti
diilustrasikan dalam gambar diatas.
2.2 Fragments Lifecycle
Fragment merupakan salah satu komponen pada Android Studio dengan
fungsi yang hampir sama seperti activity tetapi memiliki “lifecycle” yang
berbeda. Fragment dapat dikombinasikan dalam satu aktivitas untuk
membangun UI multipanel dan menggunakan kembali sebuah fragment dalam
beberapa aktivitas. Fragment dapat dianggap sebagai bagian modular dari
aktivitas, yang memiliki lifecycle sendiri, menerima kejadian masukan sendiri,
dan yang bisa di tambahkan atau di hapus saat aktivitas berjalan (semacam
"subaktivitas" yang bisa digunakan kembali dalam aktivitas berbeda).
Fragment memiliki banyak method yang dapat di override seperti halnya
Activity:
1. onAttach() dipanggil saat sebuah fragment terhubung ke activity.
2. onCreate() dipanggil saat sebuah fragment dibuat (objeknya di memori).
3. onCreateView() dipanggil saat fragment sudah siap membaca sebuah
layout.
4. onViewCreated() dipanggil setelah onCreateView() dan memastikan
layout yang dibaca fragment adalah non-null. Semua pengaturan view
seperti pembacaan findViewById, menambah onClickListener dapat
dilakukan di sini.
5. onActivityCreated() dipanggil setelah activity pembaca sudah
menyelesaikan onCreate()-nya.
6. onStart() dipanggil setelah fragment siap untuk ditampilkan di layar.
7. onResume() dipakai untuk melakukan pembacaan data yang lebih "rumit"
seperti lokasi, sensor, dll.
8. onPause() - Tempat melepas data "rumit". Lakukan commit di sini.
9. onStop() - Mengindikasikan bahwa fragment sudah tidak terlihat lagi oleh user.
10. onDestroyView() dipanggil saat layout sebuah fragment akan dihapus dari memori,
namun fragment masih ada di memori.
11. onDestroy() dipanggil jika fragment sudah tidak dipakai.
12. onDetach() dipanggil saat fragment tidak lagi terhubung ke sebuah
activity.
Berikut merupakan urutan eksekusi lifecycle dapat dilihat pada gambar di
bawah:
Gambar 5.2 Lifecycle Fragment
Yang paling sering di override adalah onCreateView karena hampir setiap
fragment akan memerlukan sebuah layout, onCreate saat ingin menginisialisasi
data dan onActivityCreated untuk menyiapkan sesuatu saat Activity sudah
sempurna dimuat.
2.3 Interaksi Antar Fragments
Sering kali, suatu activity memiliki lebih dari satu fragments yang saling
bekerja sama. Oleh karena itu, sangatlah penting bagi fragment-fragment
tersebut agar dapat saling berkomunikasi dan bertukar data. Sebagai contoh, di
mana suatu fragment memiliki daftar items dan bila user menekan pada salah
satu item di fragment tersebut, detail keterangan mengenai item tersebut dapat
ditampilkan pada fragment lainnya.
2.4 Fragment Khusus
Fragments adalah mini-activities yang memiliki lifecycles sendiri. Untuk
membuat fragments, perlu dibuat sebuah class yang merupakan turunan
(extend) dari fragment base class. Selain Fragment base class, terdapat
beberapa subclass dari Fragment base class untuk membuat fragment-fragment
yang lebih khusus, seperti ListFragment dan DialogFragment.
2.4.1 List Fragment
List fragment merupakan sebuah fragment yang memiliki suatu
ListView, menampilkan daftar items dari suatu sumber data, seperti sebuah
array atau cursor. Untuk membuat suatu list fragment, dapat digunakan
ListFragment base class.
2.4.2 Dialog Fragment
Suatu dialog fragment akan berada di atas sebuah activity dan
ditampilkan bentuk modal. Dialog fragments berguna untuk kasus-kasus
dimana memerlukan tanggapan user sebelum menjalankan aksi tertentu,
seperti memastikan user saat akan menghapus data atau keluar dari
aplikasi. Untuk membuat suatu dialog fragment tentunya diperlukan
DialogFragment base class.

III. TUTORIAL
Berikut merupakan contoh pembuatan fragment pada Android Studio:
1. Buatlah sebuah project baru pada Android. Pilih Empty Activity > Next.

Gambar 5.3 Tampilan New Project


2. Kemudian, isi n a m e dengan nama aktivitas yang ingin dibuat. Lalu pilih kotlin
sebagai language dengan minimum SDK yaitu API 21: Android Studio 5.0 (Lollipop)
seperti gambar dibawah ini.
Gambar 5.4 Tampilan Empty Activity

3. Lalu klik layout dan pilih activity_main.xml untuk membuat 3 button


sebagai operator untuk memindahkan fragment seperti berikut.
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/androi"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">

<Button
android:id="@+id/btn_satu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="24dp"
android:layout_marginTop="24dp"
android:text="@string/Home"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"/>

<Button
android:id="@+id/btn_dua"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="24dp"
android:layout_marginEnd="24dp"
android:text="@string/keranjang"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />

<Button
android:id="@+id/btn_tiga"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="24dp"
android:layout_marginEnd="24dp"
android:text="@string/Akun"
app:layout_constraintStart_toStartOf="@id/btn_satu"
app:layout_constraintEnd_toEndOf="@id/btn_dua"
app:layout_constraintTop_toTopOf="parent"/>

<FrameLayout
android:id="@+id/fragment"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginTop="48dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@+id/btn_satu"/>

</androidx.constraintlayout.widget.ConstraintLayout>

4. Selanjutnya membuat fragment Home button dan pilih Fragment(Blank).


Gambar 5.5 Langkah Membuat Fragment
5. Kemudian, i s i Fragment Name dengan nama fragment yang ingin dibuat
lalu klik finish.
6. Atur tampilan fragment untuk button home pada layout fragment_home seperti
berikut.
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context=".Home">

<TextView
android:id="@+id/tv_home"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textStyle="bold"
android:text="@string/Home"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"/>

</androidx.constraintlayout.widget.ConstraintLayout>
7. Selanjutnya membuat fragment akun dan keranjang button dengan langkah
yang sama seperti membuat fragment Home button dengan memilih
Fragment(Blank) dan lanjutkan langkah berikutnya.

8. Kemudian membuat perintah (code program) dengan mengklik


MainActivity.kt dimana perintah tersebut bertujuan agar button yang telah
dibuat dapat berfungsi untuk menampilkan fragment yang di inginkan seperti
contoh berikut.
package com.example.modul5frament
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button

class MainActivity : AppCompatActivity() {


override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)

val Home = Home()


val Keranjang = Keranjang()
val Akun = Akun()

supportFragmentManager.beginTransaction().apply {
replace(R.id.fragment, Home)
commit()
}
val btn_satu = findViewById<Button>(R.id.btn_satu)

btn_satu.setOnClickListener {
supportFragmentManager.beginTransaction().apply {
replace(R.id.fragment, Home)
addToBackStack(null)
commit()
}
}
val btn_dua = findViewById<Button>(R.id.btn_dua)

btn_dua.setOnClickListener {
supportFragmentManager.beginTransaction().apply {
replace(R.id.fragment, Keranjang)
addToBackStack(null)
commit()
}
}
val btn_tiga = findViewById<Button>(R.id.btn_tiga)

btn_tiga.setOnClickListener {
supportFragmentManager.beginTransaction().apply {
replace(R.id.fragment, Akun)
addToBackStack(null)
commit()
}
}
}
}

9. Selanjutnya siapkan Device yang akan digunakan untuk menjalankan aplikasi


yang telah dibuat kemudian pilih Run ‘app’. Maka tampilan aplikasi yang
terdapat dalam device yaitu berupa beberapa button yang apabila diklik maka
akan menampilkan masing-masing fragment dari button tersebut.
Gambar 5.6 Tampilan Pada Device
IV. KESIMPULAN
Fragments merupakan salah satu bagian penting dalam pemrograman
Android. Fragment sendiri merupakan mini-activities yang dapat ditambahkan
atau dihilangkan dari sebuah activity. Fragment mulai diperkenalkan oleh
Android pada versi Honeycomb (API 11). Fragment memiliki tujuan membuat
tampilan aplikasi menjadi lebih dinamis dan membuat user interface dapat terbagi
menjadi modular dan digunakan kembali. Fragment sendiri pun memiliki life
cycle sendiri sehingga tidak bergantung pada life cycle activity dan secara garis
besar life cycle dari fragments terdiri atas onAttach(), onCreate(). onCreateView(),
onActivityCreated(), onStart(), onResume(), on Pause(), onStop().
onDestroyView(), onDestroy(), dan onDetach().

V. TUGAS PENDAHULUAN
1. Apa yang anda ketahui mengenai fragment?
2. Bagaimana hubungan fragment dengan activity?
3. Apa itu fragment lifecycle?
4. Apakah lifecycle fragment dan lifecycle activity berbeda? Jelaskan!
5. Jelaskan sejarah singkat fragment!
6. Sebutkan fragment method beserta fungsi-fungsinya!
7. Berikan contoh bagaimana interaksi antar fragment ketika dijalankan!
8. Sebutkan fragment khusus yang anda ketahui!
9. Berikan contoh tampilan akhir seperti apa saja yang dapat dihasilkan dari
dialog fragment?
10. Apa fungsi dari PreferenceFragmentCompat ?
PEMROGRAMAN DASAR KOMPUTER
MODUL VI
USER INTERFACE (UI)

LABORATURIUM TEKNIK INDUSTRI


FAKULTAS TEKNIK
UNIVERSITAS SULTAN AGENG TIRTAYASA
2021
MODUL VI
USER INTERFACE (UI)

I. PENDAHULUAN
Setelah mengenal dan menguasai konsep dasar dalam pemrograman Android,
saatnya untuk mengenal lebih jauh mengenai berbagai komponen antarmuka (UI/
userinterface) yang dapat digunakan dalam pembangunan aplikasi Android. Dalam
modul ini, akan membahas berbagai komponen user interface yang ada, seperti:
1. Views, ViewGroup, dan Dialogs
2. Dynamics Layout
3. Menu
4. Notifikasi
5. Programmatical UI
1.1 Tujuan Praktikum
Berikut ini merupakan tujuan dari Modul VI “User Interface” , yaitu:
a. Mampu mengetahui dan memahami komponen-komponen pada User
Interface, seperti Views, Viewgroup dan Dialogs
b. Mampu mengetahui dan memahami dynamic layout pada User Interface.
c. Mampu mengetahui dan memahami menu pada User Interface.
d. Mampu mengetahui dan memahami notifikasi pada User Interface
e. Mampu membuat user interface secara langsung dengan coding program
(Programmmatical UI)
1.2 Alat dan Bahan
Alat dan bahan yang digunakan pada praktikum Modul VI, yaitu:
1. Laptop
2. Software Android Studio IDE
1.3 Prosedur
Prosedur pelaksanaan dan penyelesaian Modul VI antara lain:
1. Seluruh praktikan wajib mengikuti sesi pelatihan software
Android Studio IDE melalui teleconference yang dilakukan
oleh SMI.
2. Seluruh praktikan wajib mengikuti sesi tutorial membuat user interface
menggunakan software Android Studio IDE.
3. Seluruh praktikan wajib mengerjakan soal latihan Modul VI
tentang User Interface dengan waktu yang telah ditentukan
Asisten.
4. Komunikasikan hasil latihan dengan asisten dan dosen pengampu.
5. Kumpulkan portofolio hasil latihan tersebut kepada asisten.

II. MEKANISME PROSES


1.1 Komponen User Interface
User interface (UI) adalah sebuah desain yang digunakan sebagai
penghubung antara manusia sebagai pengguna dengan software pada perangkat
sehingga akan memudahkan pengoperasian dari perangkat tersebut. User
interface merupakan salah satu komponen yang penting dalam sebuah aplikasi
mobile seperti Android, karena user interface merupakan cara user untuk
berkomunikasi dengan program. Sebuah user interface yang baik akan membuat
user nyaman dengan aplikasi yang kita buat.

Mudahnya, UI merupakan desain tampilan pada layar perangkat seperti


yang dimiliki oleh smartphone, tablet dan berbagai jenis perangkat lainnya. Atau
sebagian orang awam lebih mengenalnya sebagai tema. Unit dasar dari aplikasi
Android adalah activity. Activity menampilkan UI (user interface) dari aplikasi,
yang dapat terdiri atas widgets seperti tombol, label, textbox, dan sebagainya
yang didefinisikan dalam file XML seperti pada Gambar 3.1 yang memperlihakan
komponen UI di file .xml dan pemanggilannya di .java.
Gambar 3.1 Komponen UI di file .xml dan pemanggilannya di java

Suatu activity terdiri atas views dan ViewGroup. Suatu view adalah sebuah
widget yang memiliki tampilan dalam layar. Satu atau lebih views dapat
dikelompokkan menjadi satu ViewGroup. ViewGroup menyediakan kerangka
layout yang dapat mengatur tampilan dan urutan dari views. Contoh ViewGroup
yaitu RadioGroup, LinearLayout, AbsoluteLayout, TableLayout,
RelativeLayout, FrameLayout, ScrollView, GridLayout, dan lain-lain.
Berikut beberapa ukuran yang dapat membuat dan menentukan
desain user interface yang tepat bagi aplikasi yang akan dibuat, yaitu:
a. dp – density-independent pixel
1 dp sama dengan 1 pixel pada suatu layar 160 dpi. Unit dengan
ukuran ini direkomedasikan untuk mengatur dimensi dari views. Unit
ukuran inijuga dapat ditulis sebagai dip
b. sp – scale-independent pixel
sp sama dengan 1 pixel pada suatu layar 160 dpi. Unit dengan ukuran
ini direkomedasikan untuk mengatur ukuran tulisan.
c. pt – point
Satu point sama dengan 1/72 inch pada ukuran layar fisik.
d. px – pixel
Berkaitan dengan pixel asli yang ada pada layar monitor. Unit
ukuran ini tidak direkomendasikan karena UI bisa saja tidak sesuai
harapan bila berjalan pada perangkat dengan resolusi layar yang
berbeda.
2.1.1 Views
Suatu views adalah sebuah widget yang memiliki tampilan dalam layar
aplikasi. Views yang umum digunakan, antara lain: TextView, EditText,
Button, ImageButton, CheckBox, ToggleButton, RadioButton, dan
RadioGroup.
Untuk menangani kejadian atau input user untuk tiap views yang ada,
dapat menggunakan fungsi-fungsi penanganan kejadian, seperti OnClik
pada ButtonView dan sebagainya. Untuk menangani input user tersebut secara
dinamis biasanya fungsi-fungsi tersebut didefinisikan dalam file.java activity
bersesuaian.

Ada dua view lain yang umum digunakan dalam aplikasi Android,
yakni AutoCompleteTextView dan progressBarView.
AutoCompleteTextView merupakan subclass dari EditText yang
menampilkan daftar saran kata yang komplet secara otomatis saat user sedang
mengetik. ProgressBar view memberikan suatu tanggapan visual bahwa suatu
hal sedang dikerjakan, seperti sedang mengerjakan tugas di background.
2.1.2 ViewGroup/Layout
ViewGroup menyediakan kerangka layout yang dapat mengatur tampilan
dan urutan dari views. Contoh ViewGroup yaitu RadioGroup, LinearLayout,
AbsoluteLayout, TableLayout, RelativeLayout, FrameLayout, ScrollView dan
GridLayout.
a) LinearLayout merupakan salah satu layout paling sering digunakan
dalam pengembangan aplikasi Android. Layout ini untuk mengatur
views ke dalam satu kolom atau baris tunggal. linear layout akan
meletakkan elemen yang ada di dalamnya secara berurutan tergantung
orientationnya. jika orientationnya vertical, maka peletakan elemen
akan terurut kebawah. Sedangkan jika orientationnya horizontal
(secara default, orientation horizontal tidak ditulis di dalam XML),
maka peletakan elemennya akan terurut ke samping. Kesederhanaan
Linear Layout memudahkan penggunaan namun membatasi
fleksibilitasnya. Untuk aplikasi yang memiliki design tidak terlalu
kompleks maka linear layout sangat cocok untuk digunakan.
b) AbsoluteLayout untuk mengatur lokasi yang tepat bagi view-view di
dalamnya. Namun, sering kali muncul masalah saat activity dilihat pada
layar resolusi tinggi. Oleh karena itu, AbsoulteLayout telah di
deprecated sejak Android 1.5
c) RelativeLayout untuk mengatur bagaimana child views diposisikan
secara relative antara view yang satu dengan view yang lainnya.
Relative Layout merupakan layout yang berfungsi untuk mengatur
layout komponen atau widget aplikasi android dengan cara relative
(secara bebas) tidak hanya vertikal atau horisontal saja seperti pada
Linear Layout. Relative Layout memungkinkan kita untuk
memposisikan komponen mana saja yang kita inginkan, sehingga
dianggap sebagai layout yang paling fleksibel.
d) TableLayout mengelompokkan views ke dalam baris dan kolom.
<TableRow> membuat sebuah baris, dimana tiap baria terdiri atas
beberapa views. Tiap views membentuk satu cell dan lebar kolom
ditentukan oleh lebar cell yang terbesar.
e) FrameLayout adalah suatu placeholder di layar yang dapat digunakan
untuk menampilkan satu view tunggal. View-view yang ditambahkan ke
suatu FrameLayout selalu diposisikan pada sisi kiri atas layout.
Perhatikan bahwa FrameLayout disisipkan di dalam suatu
RelativeLayout. Hal ini dikenal sebagai layout bersarang (nested
layout), dimana layout-layout saling menumpuk untuk menciptakan
desain antar muka yang lebih kompleks. Kita juga dapat menambahkan
views pada suatu FrameLayout, tetapi view-view tersebut akan saling
bertumpukkan. Untuk mengatasinya dapat menggunakan atribut
layout_gravity untuk mengatur posisi view yang satu dengan yang lain.
f) ScrollView merupakan bentuk khusus dari FrameLayout yang
memungkinkan user untuk men-scroll sekelompok views yang
memenuhi tempat melebihi ukuran fisik layar. ScrollView hanya bisa
memiliki satu child view atau ViewGroup, yang biasanya adalah
LinearLayout. Edit text secara otomatis memperoleh focus sehingga
memenuhi seluruh layar, (tinggi di-set 600dp). Untuk mencegahnya
memperoleh focus, tambahkan atribut android:focusable=”true” dan
android:focusableInTouchMode=”true” di ViewGroup
LinearLayout.
g) GridLayout diperkenalkan pada Android 4.0. Layout ini membagi
antarmuka menjadi grid-grid yang terdiri atas baris dan kolom cells.
2.1.3 Dialogs
Terkadang dalam suatu aplikasi dibutuhkan suatu kotak dialog untuk
memperoleh konfirmasi (masukan atau input) dari user. Caranya dapat dengan
menggunakan AlertDialog.Builder. AlertDialog.Builder digunakan untuk
membuat antarmuka sebuah alert box, seperti judul, pesan yang ditampilkan,
tombol dan fungsi tombol pada saat method onclick dijalankan.
1.2 Dynamics Layouts
Layout-layout umum yang disediakan oleh framework Android lebih sesuai
untuk antarmuka yang statis, dimana elemen-elemen antarmuka dapat definisikan
terlebih dahulu. Jika isi antarmuka tidak didefinisikan terlebih dahulu, dapat
menggunakan dynamics layout untuk mengembangkan antarmuka secara dinamis.
Beberapa contoh dynamics layouts yang akan dibahas yaitu ListView, SpinnerView
dan GridView.
2.2.1 ListView
ListView adalah views yang memungkinkan untuk menampilkan suatu
daftar panjang items. Terdapat 2 jenis list views, yaitu ListView dan SpinnerView.

ListView menampilkan suatu daftar items dalam betuk scrolling vertikal. Saat user
menekan salah satu daftar nama dosen yang ada maka akan muncul Toast yang
menampilkan informasi user memilih dosen yang mana.
2.2.2 Spinner
SpinnerView menampilkan satu item pada satu saat dari suatu daftar dan
memungkinkan users untuk memilih items tersebut. Kita akan modifikasi contoh
proyek sebelumnya dengan menambahkan spinner di dalamnya.
2.2.3 GridView
GridView menampilkan items dalam bentuk grid dua dimensi yang dapat
di-scroll. GridView yang digunakan bersama dengan ImageView untuk
menampilkan sederet gambar berbeda. Copy dan Paste semua gambar yang ingin
digunakan ke dalam folder redrawable. Penamaan gambar harus dimulai dengan
huruf kecil atau non kapital.
Hasil aplikasi bila dijalankan saat user menekan salah satu gambar yang ada
maka akan muncul Toast yang memberikan informasi gambar mana yang dipilih
user tersebut.
1.3 Menus
Menu dapat digunakan untuk menampilkan opsi tambahan yang tidak
terlihat secara langsung pada UI (user interface) utama aplikasi. Terdapat tiga
menu di Android, yaitu:
(a) Options menu atau Action bar
Menampilkan informasi berkaitan dengan activity yang sedang
berlangsung. Diaktifkan dengan menekan tombol MENU.
(b) Context menu
Menampilkan informasi berkaitan demgan suatu view pada suatu activity.
Diaktifkan dengan menekan dan menahan suatu view tertentu.
(c) Popup menu
Menampilkan modal menu yang terhubung dengan suatu view, tetapi tidak
mempengaruhi isi view secara langsung.
2.3.1 Options Menu/ Action Bar
Selain fragments, fitur baru lainnya yang diperkenalkan mulai Android 3
adalah action bar. Action bar menggantikan title bar yang terdapat pada bagian
atas layar perangkat. Menampilkan icon aplikasi, judul activity, serta (optional)
action items di sisi kanan action bar.
Action bar dapat disembunyikan dengan menambahkan atribut
android:theme=”@style/Theme.AppCompat.NoActionBar” dalam file
manifest aplikasi sesuai activity yang ingin disembunyikan action bar-nya. Cara
lain yang dapat dilakukan adalah dengan memanggil fungsi
getSupportActionBar().hide() di file activity yang bersesuain. Untuk
menampilkan kembali action bar dalam suatu activity, dapat dipanggil fungsi
getSupportActionBar().show().
Untuk menambahkan item-item dalam action bar dapat dilakukan melalui
file menu activity yang bersesuaian yang terletak di dalam folder res/menu. Setelah
melakukan penambahan items di dalam file .xml menu, selanjutnya dapat
ditentukan aksi yang akan dilakukan bila items dalam menu tersebut dipilih.
Dalam mengembangkan suatu aplikasi yang memiliki banyak activities dan
pemanggilan activity yang satu dengan yang lainnya dapat dilakukan berulang kali,
activity-activity yang dipanggil tersebut akan saling bertumpuk-tumpuk. Untuk
menghilangkan seluruh tumpukan activities yang ada maka dapat menggunakan
fungsi addFlags pada obyek intent yang dibuat.
2.3.2 Context Menu
Selain option menu, kita juga dapat membuat context menu. Context menu
biasanya berkaitan dengan suatu view pada activity dan dapat ditampilkan saat user
menekan dan menahan sebuah item. Jika ingin membuat context menu sebuah view,
method setOnCreateContextMenuListener() dari view tersebut harus dipanggil.
Saat user menekan Button view yang ada maka akan muncul suatu context menu
untuk Button view tersebut yang dapat dipilih aksinya.
1.4 Notifikasi
Notifikasi adalah suatu pesan yang dapat ditampilkan kepada user diluar UI
normal aplikasi. Untuk membuat notifications, digunakan NotificationManager
class yang dapat diperoleh dari Context, seperti suatu activity atau service, melalui
getSystemService() method. Notification.Builder menyediakan suatu builder
interface untuk membuat suatu notification. PendingIntent digunakan untuk
menentukan aksi yang harus dilakukan saat user memilih notification tersebut.
1.5 Programmatical UI
Selain dengan menggunakan file layout (.xml), kita juga dapat membuat UI
(user interface) secara langsung dalam coding program.

III. TUTORIAL
Berikut ini merupakan contoh proyek menggunakan user interface, yaitu:
3.1 Pembuatan Linear Layout
Berikut ini merupakan contoh project membuat linear layout, yaitu:
1. Buatlah project baru pada Android Studio. Pilih Empty Activity > Next.

Gambar 3.2 Tampilan Project Template


2. Kemudian, configure your project.
Isi Name dengan nama aplikasi yang akan dibuat “linear layout”. Kemudian
Bahasa pemrograman (Language) yang digunakan adalah Kotlin. Pada
bagian minimum SDK diusahakan untuk memilih spesifikasi minimum.
Gambar 3.3 Tampilan Configure Project
3. Kemudian pada res, terdapat layout. Pada bagian layout, klik kanan mouse anda.

Gambar 3.4 Tampilan Project


Setelah itu, terdapat tampilan seperti di bawah ini. Pilih layout > Layout
Resource File.
Gambar 3.5 Layout Resource File
4. Setelah itu akan muncul tampilan seperti di bawah ini, isi file name menjadi
“linierlayout” dengan root element menjadi “LinearLayout”. Kemudian klik
“Ok”.

Gambar 3.6 New Resource File


5. Pada linearlayout.xml, buatlah desain layout dengan memasukan coding seperti
berikut.
Gambar 3.7 Tampilan Linearlayout.xml

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="start"
android:layout_weight="1"
android:text="@string/Button"/>
<Button
android:layout_width="160dp"
android:layout_height="wrap_content"
android:text="@string/Button"
android:layout_gravity="center"
android:layout_weight="2"/>
<Button
android:layout_width="160dp"
android:layout_height="wrap_content"
android:text="@string/Button"
android:layout_gravity="end"
android:layout_weight="3"/>

</LinearLayout>

6. Setelah selesai, buka string.xml pada app > res > value > string.xml.
Kemudian, buatlah kode pemanggilan pada string.xml seperti berikut.
<resources>
<string name="app_name">Linear Layout Tutorial</string>
<string name="btn">BUTTON</string>
</resources>

7. Setelah selesai, siapkan Device yang akan digunakan untuk menjalankan


aplikasi kemudian pilih Run ‘app’ atau Shift+F10
8. Berikut ini merupakan hasil aplikasi yang telah dibuat.

Gambar 3.8 Tampilan Hasil Linier Layout


3.2 Pembuatan Table Layout
Berikut ini merupakan contoh project membuat linear layout, yaitu:
1. Buatlah project baru pada Android Studio. Pilih Empity Activity > Next.

Gambar 3.9 Tampilan Project Template


2. Kemudian, Configure Your Project.
Isi Name dengan nama aplikasi yang akan dibuat “Table Layout ”.
Kemudian Bahasa pemrograman (Language) yang digunakan adalah Java.
Pada bagian Minimum SDK diusahakan untuk memilih spesifikasi
minimum.

Gambar 3.10 Tampilan Configure Project


3. Kemudian buka file layout > activity_main.xml kemudian buatlah desain
layout seperti berikut.
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingTop="18dp"
android:paddingBottom="18dp"
tools:context="com.example.myapplication.MainActivity">

<TableRow>
<TextView
android:layout_width="120dp"
android:text="@string/tvUsername"/>
<EditText
android:id="@+id/txtUsername"
android:layout_width="200dp"/>
</TableRow>
<TableRow>
<TextView
android:text="@string/tvPassword"/>
<EditText
android:id="@+id/txtPassword"
android:inputType="textPassword"/>
</TableRow>
<TableRow>
<TextView/>
<CheckBox
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/chkRememberPassword"
android:text="@string/chkRememberPassword"/>
</TableRow>
<TableRow>
<Button
android:id="@+id/btnSignIn"
android:text="@string/btnSignIn"/>
</TableRow>
</TableLayout>

4. Setelah selesai, buka string.xml pada app > res > value > string.xml.
Kemudian, buatlah kode pemanggilan pada string.xml seperti berikut.
<resources>
<string name="app_name">Table Layout</string>
<string name="tvUsername">Username</string>
<string name="tvPassword">Password</string>
<string name="chkRememberPassword">Remember Password</string>
<string name="btnSignIn">LOG IN</string>
</resources>

5. Setelah selesai, siapkan Device yang akan digunakan untuk menjalankan


aplikasi kemudian pilih Run ‘app’ atau Shift+F10
6. Berikut ini merupakan hasil aplikasi yang telah dibuat.
Gambar 3.11 Hasil Table Layout

3.2 Pembuatan View Basic


Berikut ini merupakan contoh pembuatan view basic berupa log in, yaitu:
1. Buatlah project baru pada Android Studio. Pilih Empty Activity > Next.

Gambar 3.12 Tampilan Project Template


2. Kemudian, configure your project.
Isi Name dengan nama aplikasi yang akan dibuat “View Basic”. Kemudian
Bahasa pemrograman (Language) yang digunakan adalah Kotlin. Pada
bagian minimum SDK diusahakan untuk memilih spesifikasi minimum.

Gambar 3.13 Tampilan Configure your Project

3. Kemudian, import library dengan mengikuti langkah berikut: File > Project
Structure > Dependencies > Klik tanda + > Klik Library dependency > Ketik “
cardview” > pilih Versi 1.0.0 > Ok.

Gambar 3.14 Tampilan Add Library Dependency


4. Me- rename (mengubah nama) MainActivity menjadi LoginActivity dengan cara:
arahkan kursor pada MainActivity > klik kanan pada mouse > Refactor > Rename
> Ketik “ LoginActivity” > Refactor
Gambar 3.15 Tampilan rename
Setelah itu, rename activity_main.xml menjadi activity_login.xml dengan
mengikuti langkah diatas.
5. Membuat layout pada activity_login.xml. Buka file layout > activity_login.xml
kemudian buatlah desain layout seperti berikut.

<?xml version="1.0" encoding="utf-8"?>


<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".LoginActivity"
android:background="@color/colorPrimary">

<androidx.cardview.widget.CardView
android:id="@+id/cardView"
android:layout_width="0dp"
android:layout_height="320dp"
android:layout_marginStart="32dp"
android:layout_marginEnd="32dp"
app:cardCornerRadius="16dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">

<EditText
android:autofillHints="@string/email"
android:id="@+id/etEmail"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="16dp"
android:layout_marginEnd="16dp"
android:ems="10"
android:hint="@string/email"
android:inputType="textEmailAddress"
android:textColor="@color/colorAccent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"

app:layout_constraintTop_toBottomOf="@+id/textView" />

<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:text="@string/login"
android:textColor="@color/colorPrimaryDark"
android:textSize="24sp"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

<EditText
android:autofillHints="@string/password"
android:id="@+id/etPassword"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:ems="10"
android:hint="@string/password"
android:inputType="textPassword"
app:layout_constraintEnd_toEndOf="@+id/etEmail"

app:layout_constraintStart_toStartOf="@+id/etEmail"

app:layout_constraintTop_toBottomOf="@+id/etEmail" />

<TextView
android:id="@+id/btnForgotPassword"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:text="@string/forgot_password"

app:layout_constraintEnd_toEndOf="@+id/etPassword"

app:layout_constraintTop_toBottomOf="@+id/etPassword" />

<Button
android:id="@+id/btnLogin"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:background="@color/purple_200"
android:text="@string/login"
android:textColor="#FFFFFF"
android:textStyle="bold"

app:layout_constraintEnd_toEndOf="@+id/etPassword"

app:layout_constraintStart_toStartOf="@+id/etPassword"
app:layout_constraintTop_toBottomOf="@+id/btnForgotPassword" />

<Button
android:id="@+id/btnRegister"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:background="@color/colorPrimaryDark"
android:text="@string/register"
android:textColor="#FFFFFF"
android:textStyle="bold"

app:layout_constraintEnd_toEndOf="@+id/btnLogin"

app:layout_constraintStart_toStartOf="@+id/btnLogin"

app:layout_constraintTop_toBottomOf="@+id/btnLogin" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.cardview.widget.CardView>

</androidx.constraintlayout.widget.ConstraintLayout>

6. Setelah selesai, buka string.xml pada app > src > main> res > value >
string.xml. Kemudian, buatlah kode pemanggilan pada string.xml seperti
pada gambar berikut.
<resources>
<string name="app_name">View Basic</string>
<string name="email">Email</string>
<string name="login">Login</string>
<string name="password">Password</string>
<string name="forgot_password">Forgot password?</string>
<string name="register">REGISTER</string>
</resources>

7. Setelah selesai, siapkan Device yang akan digunakan untuk menjalankan


aplikasi kemudian pilih Run ‘app’ atau Shift+F10
8. Berikut ini merupakan hasil aplikasi yang telah dibuat.
Gambar 3.16 Hasil View Basic (Log in)

IV. KESIMPULAN
Terdapat beberapa komponen user interface. Pertama, views merupakan
komponen yang umum digunakan. Views terdiri dari TextView, EditText, Button,
ImageButton, CheckBox, ToogleButton, RadioButton, AutoCompeleteTextView,
dan ProgressBar. Kemudian, ViewGroup yang terdiri dari LinearLayout,
AbsoluteLayout, TableLayout, RelativeLayout, FrameLayout, ScrollView, dan
GridLayout. Selain komponen user interface, terdapat juga cara untuk
memanipulasi tampilan Android, yaitu secara programmatically UI. Terdapat juga
komponen menu yang dapat membantu dalam pembuatan menu pada aplikasi
Android.
V. TUGAS PENDAHULUAN
1. Jelaskan pengertian user interface dan fungsinya (minimal 3)!
2. Sebutkan komponen yang terdapat pada user interface di
Android!
3. Sebutkan dan jelaskan unit ukuran yang terdapat pada Android!
4. Jelaskan apa yang dimaksud dengan views dan viewgroup!
5. Sebutkan contoh cara kerja aplikasi dengan ProgressBar view!
6. Sebutkan dan jelaskan jenis-jenis viewgroup!
7. Sebutkan dan jelaskan jenis-jenis dynamic layouts!
8. Jelaskan apa yang dimaksud dengan menu kemudian sebutkan
dan jelaskan tipe-tipe menu di Android.
9. Jelaskan fungsi dialogs pada Android!
10. Sebutkan jenis-jenis views yang digunakan pada Android!

`
PEMROGRAMAN DASAR KOMPUTER
MODUL VII
RECYCLERVIEW

LABORATURIUM TEKNIK INDUSTRI


FAKULTAS TEKNIK
UNIVERSITAS SULTAN AGENG TIRTAYASA
2021
MODUL VII
RECYCLERVIEW

I. PENDAHULUAN
Pada awalnya, para developer android menggunakan widget Listview untuk
menampilkan data yang berbentuk daftar. Ketika menampilkan item yang banyak
berbentuk daftar (list) yang dapat digulir (scroll), sebagian item tidak akan terlihat.
Hal ini dikarenakan jumlah item yang ditampilkan menyesuaikan dengan layar dari
device yang digunakan. Selain itu listview akan memproses seluruh data atau item
pada satu waktu yang bersamaan. Jika item yang banyak tersebut diproses secara
bersamaan, maka hal ini dapat memakan kinerja RAM dari device dan membuat
aplikasi menjadi macet atau lag.
Recyclerview hadir sebagai solusi atas permasalahan ini. Dengan kemampuan
untuk memproses item yang hanya muncul pada layar device maka menampilkan
item dengan jumlah yang sangat banyak dapat dilakukan dengan sangat efisien.
Selain itu, recyclerview mampu membuat desain layout yang lebih beragam
dibandingkan listview. Konsep mengenai recyclerview dan cara pembuatannya akan
dijelaskan lebih lanjut pada tahapan selanjutnya.

1.1 Tujuan Praktikum


Berikut ini merupakan tujuan dari Modul VII “Recyclerview” , yaitu:
1. Praktikan memahami konsep recyclerview.
2. Praktikan mengetahui perbedaan recyclerview dengan listview.
3. Praktikan dapat membuat recyclerview sederhana.
1.2 Alat dan Bahan
Alat dan bahan yang digunakan pada praktikum Modul VII, yaitu:
1. Mempersiapkan Laptop atau PC yang sudah terinstall aplikasi Android
Studio ver. 3.6.2.
2. Mempersiapkan Handphone atau gadget berbasis Android.
3. Mempersiapkan materi Fragment Android Studio sebagai acuan
pelaksanaan praktikum.
1.1 Prosedur
Prosedur pelaksanaan dan penyelesaian Modul VII antara lain:
1. Seluruh praktikan wajib mengikuti sesi pelatihan software Android Studio
IDE melalui teleconference yang dilakukan oleh SMI.
2. Seluruh praktikan wajib mengikuti sesi tutorial membuat user interface
menggunakan software Android Studio IDE.
3. Seluruh praktikan wajib mengerjakan soal latihan Modul VI tentang User
Interface dengan waktu yang telah ditentukan Asisten.
4. Komunikasikan hasil latihan dengan asisten dan dosen pengampu.
5. Kumpulkan portofolio hasil latihan tersebut kepada asisten.

II. MEKANISME PROSES


2.1 Listview
Listview merupakan salah satu tampilan pada aplikasi Android yang
menampilkan daftar item, tersusun secara vertical serta dapat digulir (scroll). Daftar
item dimasukkan menggunakan Adapter yang mengambil data dari sumber seperti
array atau database dan menerjemahkan hasil setiap item menjadi data model untuk
listview.

Gambar 2.1 Listview

2.2 Recyclerview
Recyclerview adalah tampilan fleksibel untuk menyediakan jendela terbatas ke
hasil atau kumpulan data yang besar. Recyclerview memiliki kemampuan untuk
mendaur ulang item yang sedang ditampilkan, dimana listview akan tetap
menampilkan item-item secara keseluruhan sehingga dapat memberatkan kinerja
sistem.

Gambar 1. Perbandingan recyclerview dengan listview

Gambar 2. Konsep recyclerview

Secara default, recyclerview berfungsi untuk memproses atau menggambar


item yang muncul di layar. Jika terdapat list yang memiliki 1000 item didalamnya
dan yang terlihat pada layar hanya 3 item maka recyclerview hanya akan
menggambar 3 item tersebut, sedangkan pada listview seluruh item akan
digambarkan meskipun yang terlihat pada layar hanya 3 item saja. Ketika
melakukan scroll pada layar, recyclerview akan mendaur ulang item yang
menghilang dari layar dengan item baru yang akan memasuki layar sehingga dapat
menghemat waktu pemrosesan dan membuat scroll lebih halus dan lancar. Berikut
merupakan perbandingan recyclerview dengan listview :

Tabel 1. Perbandingan recyclerview dengan listview


Recyclerview Listview
ViewHolder wajib ViewHolder tidak wajib
Tampilan list dapat secara vertikal, horizontal,
Tampilan list didesain untuk vertikal
grid dan straggered
Terdapat ItemAnimator untuk menambah,
Tidak terdapat ItemAnimator secara default
memperbarui, dan menghapus item
OnItemClickListener harus dibuat sendiri Terdapat OnItemClickListener
Custom adapters Default adapters
Lebih kompleks Lebih simpel

Dengan adanya recyclerview, aplikasi yang memiliki jumlah item banyak


dapat berjalan lebih lancar dan optimal daripada menggunakan listview. Selain itu
dengan recyclerview pembuatan desain lebih beragam meskipun cara penggunaan
lebih sulit bila dibandingkan dengan listview. Berikut merupakan komponen yang
diperlukan untuk membuat recyclerview:
1. Data
Untuk membuat recyclerview diperlukan data yang akan ditampilkan. Data ini
dapat berasal dari variabel (database) atau dengan cara lain. Data dapat berupa
angka, gambar atau tulisan yang akan muncul pada desain recyclerview. Selain
itu data ini akan direpresentasikan sebagai sebuah file models dalam project
android.
2. Desain Model
Desain model dibuat sesuai jenis data yang akan diambil, misalkan jika akan
menggunakan gambar dari internet maka yang digunakan adalah string dan jika
menggunakan gambar dari komputer maka menggunakan integer.
3. Layout Item
Dalam pembuatan recyclerview dibutuhkan sebuah contoh layout yang nantinya
akan diperbanyak. Layout ini dibuat secara terpisah dari layout activity.
4. Adapter
Adapter berfungsi untuk menyiapkan data serta cara penampilannya dalam
viewholder. Bila data berubah, adapter akan memperbarui materi tampilan item
daftar terkait dalam recyclerview.
5. ViewHolder
Viewholder adalah bagian dari adapter yang berisi tampilan informasi untuk
menampilkan satu item dari layout item.
6. Layout Manager
Layout manager berfungsi untuk mengatur penyusunan layout item pada
tampilan recyclerview. Tampilan ini dapat berupa vertikal, horizontal atau
berupa grid.

III. TUTORIAL
Berikut ini merupakan langkah pembuatan recyclerview, yaitu:
1. Tambahkan library recyclerview dengan cara klik gradle scripts > build.gradle
(Module:) > lalu tambahkan baris dengan kode sebagai berikut:
implementation 'androidx.recyclerview:recyclerview:1.2.1'

lalu klik Sync Now pada bagian atas tampilan android studio.

Gambar 3. Menambahkan library recyclerview

2. Buat layout item (recycler_view_template) dengan cara membuat layout


resource file baru pada bagian res.layout dengan kode sebagai berikut:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_margin="8dp"
android:orientation="horizontal"
android:padding="16dp"
android:layout_height="wrap_content">

<ImageView
android:id="@+id/img_view"
android:layout_width="64dp"
android:layout_height="64dp"
android:layout_marginRight="8dp"
android:src="@mipmap/ic_launcher_round"/>

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">

<TextView
android:id="@+id/txt_title"
android:text="Nama"
android:textColor="#000000"
android:textSize="24sp"
android:textStyle="bold"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

<TextView
android:id="@+id/txt_sub_title"
android:text="Deskripsi"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>

</LinearLayout>

Gambar 4. Membuat Layout Item

3. Buat model dengan cara membuat class baru (AsistenSMI)


com.bernard.recyclerview dengan kode sebagai berikut:
data class AsistenSMI(val imgView: Int, val txtTitle: String, val
txtSubTitle: String)
Lalu masukkan file gambar yang diperlukan pada res.drawable dengan cara copy
dari komputer kedalam drawable secara langsung.

Gambar 5. Memasukkan gambar pada drawable


4. Membuat inisiasi pada MainActivity dengan menambahkan kode berikut:
class MainActivity : AppCompatActivity() {

lateinit var recyclerView: RecyclerView

override fun onCreate(savedInstanceState: Bundle?) {


super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)

Init()

private fun Init() {


recyclerView = findViewById(R.id.recycler_view)

var data = ArrayList<AsistenSMI>()


data.add(AsistenSMI(R.drawable.amel, "Amel", "Asisten SMI
2018"))
data.add(AsistenSMI(R.drawable.arfi, "Arfi", "Asisten SMI
2018"))
data.add(AsistenSMI(R.drawable.bernard, "Bernard",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.evellyne, "Evellyne",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.triwin, "Triwin", "Asisten
SMI 2018"))
data.add(AsistenSMI(R.drawable.winna, "Winna", "Asisten
SMI 2018"))
data.add(AsistenSMI(R.drawable.amel, "Amel", "Asisten SMI
2018"))
data.add(AsistenSMI(R.drawable.arfi, "Arfi", "Asisten SMI
2018"))
data.add(AsistenSMI(R.drawable.bernard, "Bernard",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.evellyne, "Evellyne",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.triwin, "Triwin", "Asisten
SMI 2018"))
data.add(AsistenSMI(R.drawable.winna, "Winna", "Asisten
SMI 2018"))
data.add(AsistenSMI(R.drawable.amel, "Amel", "Asisten SMI
2018"))
data.add(AsistenSMI(R.drawable.arfi, "Arfi", "Asisten SMI
2018"))
data.add(AsistenSMI(R.drawable.bernard, "Bernard",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.evellyne, "Evellyne",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.triwin, "Triwin", "Asisten
SMI 2018"))
data.add(AsistenSMI(R.drawable.winna, "Winna", "Asisten
SMI 2018"))
data.add(AsistenSMI(R.drawable.amel, "Amel", "Asisten SMI
2018"))
data.add(AsistenSMI(R.drawable.arfi, "Arfi", "Asisten SMI
2018"))
data.add(AsistenSMI(R.drawable.bernard, "Bernard",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.evellyne, "Evellyne",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.triwin, "Triwin", "Asisten
SMI 2018"))
data.add(AsistenSMI(R.drawable.winna, "Winna", "Asisten
SMI 2018"))
data.add(AsistenSMI(R.drawable.amel, "Amel", "Asisten SMI
2018"))
data.add(AsistenSMI(R.drawable.arfi, "Arfi", "Asisten SMI
2018"))
data.add(AsistenSMI(R.drawable.bernard, "Bernard",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.evellyne, "Evellyne",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.triwin, "Triwin", "Asisten
SMI 2018"))
data.add(AsistenSMI(R.drawable.winna, "Winna", "Asisten
SMI 2018"))

}
}

5. Buat adapter dengan cara membuat class baru (Adapter) dengan menambahkan
kode sebagai berikut:
class Adapter(private val data: ArrayList<AsistenSMI>):
RecyclerView.Adapter<>() {
}

6. Buat viewholder dengan cara membuat class baru (ViewHolder) dengan


menambahkan kode sebagai berikut:
class ViewHolder(inflater: LayoutInflater, parent:
ViewGroup):

RecyclerView.ViewHolder(inflater.inflate(R.layout.recycler_v
iew_template, parent, false)) {

private var imgView: ImageView? = null


private var txtTitle: TextView? = null
private var txtSubTitle: TextView? = null

init {
imgView = itemView.findViewById(R.id.img_view)
txtTitle = itemView.findViewById(R.id.txt_title)
txtSubTitle =
itemView.findViewById(R.id.txt_sub_title)
}

fun bind(data:AsistenSMI){
imgView?.setImageResource(data.imgView)
txtTitle?.text = data.txtTitle
txtSubTitle?.text = data.txtSubTitle
}
}

7. Lakukan implement members pada class Adapter dengan cara


mengarahkan kursor pada kode class adapter dan menekan alt + enter,
atau dengan menambahkan kode berikut:
class Adapter(private val data: ArrayList<AsistenSMI>):
RecyclerView.Adapter<ViewHolder>() {

override fun onCreateViewHolder(parent: ViewGroup,


viewType: Int): ViewHolder {
val inflater: LayoutInflater =
LayoutInflater.from(parent.context)
return ViewHolder(inflater,parent)
}

override fun onBindViewHolder(holder: ViewHolder,


position: Int) {
holder.bind(data[position])
}

override fun getItemCount(): Int {


return data.size
}
}

8. Mengatur layout manager dan adapter pada recyclerview dengan


menambahkan kode pada class MainActivity, sehingga kode akan
menjadi sebagai berikut:
class MainActivity : AppCompatActivity() {

lateinit var recyclerView: RecyclerView


lateinit var adapter: Adapter

override fun onCreate(savedInstanceState: Bundle?) {


super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)

Init()

recyclerView.layoutManager =
LinearLayoutManager(this)
recyclerView.adapter = adapter
}

private fun Init() {


recyclerView = findViewById(R.id.recycler_view)

var data = ArrayList<AsistenSMI>()


data.add(AsistenSMI(R.drawable.amel, "Amel",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.arfi, "Arfi",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.bernard, "Bernard",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.evellyne, "Evellyne",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.triwin, "Triwin",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.winna, "Winna",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.amel, "Amel",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.arfi, "Arfi",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.bernard, "Bernard",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.evellyne, "Evellyne",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.triwin, "Triwin",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.winna, "Winna",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.amel, "Amel",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.arfi, "Arfi",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.bernard, "Bernard",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.evellyne, "Evellyne",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.triwin, "Triwin",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.winna, "Winna",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.amel, "Amel",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.arfi, "Arfi",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.bernard, "Bernard",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.evellyne, "Evellyne",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.triwin, "Triwin",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.winna, "Winna",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.amel, "Amel",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.arfi, "Arfi",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.bernard, "Bernard",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.evellyne, "Evellyne",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.triwin, "Triwin",
"Asisten SMI 2018"))
data.add(AsistenSMI(R.drawable.winna, "Winna",
"Asisten SMI 2018"))

adapter = Adapter(data)

}
}

9. Hubungkan android studio dengan device untuk menjalankan aplikasi


yang telah dibuat lalu klik Run app. Android studio akan melakukan
build project pada device yang akan memakan beberapa waktu.

Gambar 6. Tampilan recyclerview pada device


IV. KESIMPULAN

Recyclerview mampu mempertahankan tampilan item dalam jumlah terbatas


dan mendaur ulang item-item yang sedang tidak digunakan sehingga dapat
menghemat pemrosesan dan tetap membuat aplikasi dapat berjalan dengan lancar.
Recyclerview merupakan peningkatan dari listview yang lebih canggih dan
fleksibel. Pada recyclerview layout dapat dibuat lebih fleksibel, dapat secara
vertikal, horizontal maupun grid.
V. TUGAS PENDAHULUAN
1. Apa itu listview?
2. Apa itu recyclerview?
3. Apa alasan diciptakannya recyclerview?
4. Bagaimana perbandingan recyclerview dengan listview?
5. Sebutkan komponen yang diperlukan untuk membuat recyclerview!
6. Jelaskan fungsi dari adapter pada recyclerview!
7. Sebuah contoh layout yang dibuat dan akan diperbanyak merupakan
pengertian dari komponen ?
8. Layout item yang telah dibuat akan diperbanyak pada komponen ?
9. Sebutkan langkah pembuatan recyclerview secara garis besar!
10. Sebutkan tujuan praktikum modul ini !
PEMROGRAMAN DASAR KOMPUTER

MODUL VIII

DATABASE FIREBASE

LABORATORIUM TEKNIK INDUSTRI

FAKULTAS TEKNIK

UNIVERSITAS SULTAN AGENG TIRTAYASA

2021
MODUL VIII

DATABASE FIREBASE

1. PENDAHULUAN
Firebase adalah API yang disediakan google untuk penyimpanan dan penyelarasan data
ke dalam aplikasi android, iOS, atau web. Realtime database adalah salah satu fasilitas yang
menyimpan data ke database dan mengambil data darinya dengan sangat cepat. Firebase
memiliki banyak fitur seperti authentication, database, storage, hosting, pemberitahuan.
1.1. Tujuan Praktikum
Berikut ini merupakan tujuan dari modul VIII “Database Firebase”, yaitu:
a. Praktikan mampu mengetahui teori terkait database Firebase
b. Praktikan mampu membuat realtime database dan authentication pada firebase
c. Praktikan mampu mensinkronisasi firebase realtime database dengan aplikasi android
1.2. Alat dan Bahan
Berikut ini adalah daftar alat dan bahan yang akan digunakan dalam
praktikum modul Database Firebase:
1. Alat : Laptop yang sudah terinstall Android Studio
2. Bahan : Modul praktikum
1.3. Prosedur
Prosedur pelaksanaan dan penyelesaian modul VIII “Database Firebase”, antara lain:
a. Seluruh praktikan wajib mengikuti sesi pelatihan software Android Studio IDE melalui
teleconference yang dilakukan oleh SMI.
b. Seluruh praktikan wajib mengikuti sesi tutorial membuat database dan coding program
penyimpanan data menggunakan software Android Studio IDE.
c. Seluruh praktikan wajib mengerjakan soal latihan Modul VIII tentang Database
Firebase dengan waktu yang telah ditentukan oleh Asisten.
d. Komunikasikan hasil pengolahan latihan dengan asisten dan dosen pengampu.
e. Kumpulkan portofolio hasil latihan tersebut kepada asisten.
2. MEKANISME PROSES
2.1. Database
Database merupakan kumpulan file-file yang saling berkaitan dan berinteraksi, relasi
tersebut bila ditunjukan dengan kunci dari tiap-tiap file yang ada. Satu database menunjukkan
suatu kumpulan data yang dipakai dalam suatu lingkup perusahaan, instansi. Pengolahan
database merupakan suatu cara yang dilakukan terhadap file-file yang berada di suatu instansi
yang mana file tersebut dapat disusun, diurut, diambil sewaktu-waktu serta dapat ditampilkan
dalam bentuk suatu laporan sehingga dapat mengolah file-file yang berisikan informasi tersebut
secara rapi (Sofia dan Febio, 2017).
Database merupakan wadah atau tempat berkumpulnya tabel-tabel yang memiliki atribut
dan data. Tabel yang ada dalam database tersebut saling berhubungan satu sama lainnya,
sehingga membentuk sebuah informasi yang dibutuhkan pengguna informasi tersebut.
Penyajian informasi diproses menggunakan aplikasi atau program komputer, (Beranda Agency
dalam Rizaldi dkk, 2015).
2.2. Firebase
Firebase merupakan platform untuk aplikasi realtime. Ketika data berubah, maka aplikasi
yang terhubung dengan firebase akan meng-update secara langsung melalui device (perangkat)
baik website ataupun mobile. Firebase mempunyai library (pustaka) yang lengkap untuk
sebagai platformweb dan mobile dan dapat digabungkan dengan berbagai framework lain
seperti node, java, javascript dan lain-lain. Application Programming Interface (API) untuk
menyimpan dan sinkronisasi data akan disimpan sebagai bit dalam bentuk JSON (Java Script
Object Notation) pada cloud dan akan disinkronisasi secara realtime.

Gambar 1. Pemanggilan Database Tradisional


Gambar 2. Pemanggilan Firebase Database
Database milik firebase merupakan database yang bersifat non-relational atau NoSQL,
dimana database ini merupakan jenis database yang tidak menggunakan sistem tabel dalam
impelmentasinya serta tidak menyimpan data secara lokal pada perangkat melainkan pada
awan. Selain itu, firebase database juga meemiliki optimisaasi dan fungsionalitas yang
berbeda bila dibandingkan dengan basis data relasional. Terdapat beberapa fitur yang
disediakan oleh firebase adalah sebagai berikut :
2.2.1 Analytics
Analytics ini dapat mengamati tingkah laku pengguna dalam penggunaan aplikasi dan
ditampilkan dalam satu dashboard.
2.2.2 Develop
Develop terbagi menjadi beberapa fitur seperti cloud messaging, authetication, realtime
database, storage, hosting, testlab dan crash reporting.
2.2.3 Grow
Grow digunakan untuk mempublikasikan sebuah produk aplikasi.
2.3 Firebase Realtime Database
Merupakan basis data online yang dapat digunakan sebagai media penyimpanan data dari
aplikasi. Data disimpan dalam bentuk JSON dan dapat disinkronkan secara realtime ke setiap
client yang terhubung. Layanan ini memiliki 3 kemampuan inti yaitu :
2.3.1 Realtime
Jika terdapat perubahan pada data database, maka seluruh client yang terhubung secara
otomatis akan mendapatkan perubahannya dengan cepat.
2.3.2 Offline
Aplikasi yang menggunakan firur ini akan tetap responsif bahkan saat dalam keadaan
luring. Hal ini disebabkan karena Firebase SDK (Software Development Kit) dapat
mempertahankan data dan perubahannya pada media penyimpanan client. Pada saat client
terhubung ke jaringan internet, maka firebase SDK akan melakukan penyesuaian otomatis atas
catatan perubahan data yang disimpan pada media penyimpanan client dengan kondisi terkini
dari Firebase Server.
2.3.3 Accessible From Client Devices
Layanan ini menawarkan kemudahan untuk mengakses firebase realtime database secara
langsung dari sebuah perangkat mobile atau sebuah peramban web tanpa membutuhkan server
application (Sanadi dkk, 2018).

3 TUTORIAL
Berikut adalah tutorial membuat suatu aplikasi yang menggunakan database Firebase
dalam penyimpanannya.
1. Buatlah sebuah project baru di Android studio, kemudian pilih empty activity.
Beri nama aplikasinya yaitu “FirebaseModul8”
2. Sambungkan project ke Firebase pada bagian Menu Bar pilih
Tools>Firebase>Realtime Database>Get Started with Realtime Database<conect
to firebase<Build
3. Masuk ke halaman firebase <Creat Proect<Add project<Nama project:
“FirebaseModul8”<continue<continue<ceklis I accept<pilih lokasi
“Indonesia”<pilih akun dengan membuat akun baru
“firebasemodul8”<save<continue<Connect
4. Android Studio telah berhasil terhubung dengan firebase
5. Kembali ke Android Studio dan pada Realtime Database pilih Add the Realtime
Database SDK<Accept Changes
6. Pada android studio buka folder res<layout<activity_main.xml lalu ketikkan kode
berikut:
7. Pada folder drawable klik kanan<new<Drawable Resource File<File Name
“input.xml<ok< masukkan kode berikut:
8. Buka file gambar yang telah dikirimkan asisten pembimbing lalu klik copy< klik
kanan pada folder drawable<paste
9. Buka folder values<colors.xml<masukkan kode berikut

10. Buka folder java<com.example.firebasemodul8<MainActivity<lalu masukkan


kode berikut:

s
11. Buka folder java<com.example.firebasemodul8<klik kanan<new<kotlin
class<data class<beri nama “user” <masukkan kode berikut:

12. Buka folder java<com.example.firebasemodul8<klik kanan<new<kotlin


class<data class<beri nama “user” <masukkan kode berikut:
4. KESIMPULAN
Berikut ini merupakan kesimpulan dari modul VIII “Database Firebase”, yaitu:
a. Praktikan mampu mengetahui teori terkait database Firebase
b. Paktikan dapat membuat aplikasi database yang berguna untuk aktivitias sehari-hari.

5. TUGAS PENDAHULUAN
1. Jelaskan apa yang dimaksud database?
2. Sebutkan dan jelaskan jenis-jenis database?
3. Apa yang dimaksud primary key?
4. Apa perbedaan primary key dengan foreign key?
5. Jelaskan apa yang dimaksud dengan firebase?
6. Jelaskan apa saja kelebihan menggunakan database firebase?
7. Apa yang dimaksud dengan firebase realtime database?
8. Jelaskan perbedaan pemanggilan database tradisional dan pemanggilan firebase database?
9. Sebutkan dan jelaskan apa saja fitur yang dimiliki oleh firebase?
10. Apa saja kemampuan layanan yang dimiliki firebase realtime database?
REFERENSI

Hansun, Seng. Marcel Bonar K., Michael Wijaya S. 2016. Pemograman Android
dengan Android Studio IDE. Yogyakarta: Indonesia. Penerbit Andi.
developer.android.com (diakses pada 05 Agustus 2020)
Nazarudin Safaat Harahap. 2012. Pemograman Aplikasi Mobile Smartphone dan Tablet
PC Berbasis Android. Informatika. Bandung.
Azam, Moch. 2017. Pengertian Android Beserta Sejarah, Kelebihan dan Kekurangannya.
Diakses di https://www.nesabamedia.com/pengerti an-android-beserta-kelebihan-
dankekurangannya/ pada tanggal 25 April 2019.
Comalasari Enny dan Verawati. 2019. Pemanfaatan Android Dalam Dunia
Pendidikan. Universitas PGRI Palembang.
Mulyadi Bohati, dkk. 2019. Aplikasi Sistem Pemesanan Jasa Laundry (E-Laundry)
berbasis Android. Jurnal Sistem Informasi. Vol.1 No.1
Akbar Ricky, Silviana Meza, dan Alizar Fikri Aulia. Perancangan Aplikasi Pembayaran
Non Tunai untuk Pengelolaan Bisnis Pencucian Mobil dengan Memanfaatkan
Teknologi QR Code (Studi Kasus : Oto Pro Car Wash & Detailling Padang). 2019.
Fakultas Teknik Universitas Muhammadiyah Jakarta.
Aprilia Putri. 2020. Mengenal User Interface: Pengertian, Kegunaan, dan
Contohnya. https://www.niagahoster.co.id/blog/user-interface/ (Diakses : 8
Agustus 2020)
Budiman, Edi. 2019. Mobile programing for student. Mulawarman University
Press. Samarinda
Sanadi, dkk. 2018. Pemanfaatan Realtime Database di Platform Firebase Pada
Aplikasi E-Tourism Kabupaten Nabire. Jurnal Penelitian Enjinering. Vol 22
No.1

Anda mungkin juga menyukai