Materi Mobile Programming Android (TM2)
Materi Mobile Programming Android (TM2)
Mobile
Programming
Android
Buat Aplikasi Android
Anda Yang Pertama
Fakultas Program Studi Tatap Muka Kode MK Disusun Oleh
Ilmu Komputer Teknik Informatika
02 F061700010 Agung Prajuhana Putra, M.Kom
Abstract Kompetensi
Materi Kuliah Pertemuan 2 , Membahas Mahasiswa Mampu Membuat Obyek di Java
1 . Proses Dev elopment
2 . Menggunakan Android Studio
3 . Menjelajahi Proyek
4 . Menampilkan dan Mengedit Kode Java
5. . Menampilkan dan Mengedit Layout
6 . Memahami Proses Pembangunan
7 . Menjalankan Aplikasi di Emulator
8 . Menggunakan Log
Proses Development
Proyek aplikasi Android dimulai dengan ide dan definisi persyaratan yang diperlukan untuk mewujudkan ide tersebut.
Saat proyek berjalan, maka akan melalui desain, development, dan pengujian.
Diagram di atas adalah gambar proses development tingkat tinggi, dengan langkah-langkah berikut:
Mendefinisikan ide dan persyaratannya: Sebagian besar aplikasi dimulai dengan ide tentang hal yang harus dilakukan,
yang didukung pasar dan penelitian pengguna. Selama tahap ini, persyaratan aplikasi didefinisikan.
Membuat prototipe antarmuka pengguna: Gunakan gambar, rekaan, dan prototipe untuk menampilkan tampilan
antarmuka pengguna nantinya, dan cara kerjanya.
Mengembangkan dan menguji aplikasi: Aplikasi terdiri dari satu atau beberapa aktivitas. Untuk setiap aktivitas, Anda
bisa menggunakan Android Studio untuk melakukan hal berikut, tidak dalam urutan tertentu:
Buat layout: Tempatkan elemen UI pada layar di layout, dan tetapkan sumber daya string serta item menu,
menggunakan Extensible Markup Language (XML).
Tulis kode Java: Buat referensi kode sumber untuk komponen dan pengujian, serta gunakan alat pengujian dan
debug.
Daftarkan aktivitas: Deklarasikan aktivitas dalam file manifes.
Definisikan versi: Gunakan konfigurasi pembangunan default atau buat pembangunan khusus untuk versi aplikasi
yang berbeda.
Mempublikasikan aplikasi: Rakit APK (file paket) final dan distribusikan melalui saluran seperti Google Play.
Saat memilih Domain Perusahaan unik, ingat bahwa aplikasi yang dipublikasikan ke Google Play harus memiliki nama
paket unik. Karena domain bersifat unik, yang mengawali nama aplikasi dengan nama Anda, atau nama domain
perusahaan, sebaiknya sediakan nama paket unik yang memadai. Jika tidak berencana untuk mempublikasikan aplikasi,
Anda bisa menerima domain contoh default. Ketahuilah bahwa mengubah nama paket di lain waktu memerlukan kerja
tambahan.
Perangkat berbeda menjalankan versi sistem Android yang berbeda, seperti Android 4.0.3 atau Android 4.4. Setiap versi
yang berurutan umumnya menambahkan API baru yang tidak tersedia di versi sebelumnya. Untuk menunjukkan rangkaian
API yang tersedia, setiap versi menetapkan API level. Misalnya, Android 1.0 adalah API level 1 dan Android 4.0.3 adalah
API level 15.
Memilih template
Android Studio mengumpulkan terlebih dulu proyek Anda dengan kode minimum untuk aktivitas dan layout layar
berdasarkan template. Tersedia berbagai macam template, mulai dari template kosong virtual (Add No Activity) hingga
beragam tipe aktivitas.
Anda bisa menyesuaikan aktivitas setelah memilih template. Misalnya, template Empty Activity menyediakan satu aktivitas
yang disertai satu sumber daya layout untuk layar. Anda bisa memilih untuk menerima nama yang biasa digunakan untuk
aktivitas (seperti MainActivity) atau mengubah nama di layar Customize Activity . Selain itu, jika Anda menggunakan
template Empty Activity, pastikan memeriksa yang berikut ini jika belum diperiksa:
Generate Layout File: Biarkan ini dicentang untuk membuat sumber daya layout yang terhubung dengan aktivitas ini,
yang biasanya diberi nama activity_main.xml. Layout mendefinisikan antarmuka pengguna untuk aktivitas.
Backwards Compatibility (AppCompat): Biarkan ini dicentang untuk menyertakan pustaka AppCompat sehingga
aplikasi kompatibel dengan Android versi sebelumnya bahkan jika menggunakan fitur yang hanya ditemukan di versi
yang lebih baru.
Android Studio membuat folder untuk proyek yang baru saja dibuat di folder AndroidStudioProjects pada komputer Anda.
1. Bilah Alat. Bilah alat menjalankan beragam tindakan, termasuk menjalankan aplikasi Android dan meluncurkan alat
Android.
2. Bilah Navigasi. Bilah navigasi memungkinkan navigasi melalui proyek dan membuka file untuk pengeditan. Bilah
navigasi menyediakan tampilan struktur proyek yang lebih ringkas.
3. Panel Editor. Panel ini menampilkan materi file yang dipilih dalam proyek. Misalnya, setelah memilih layout (seperti
yang ditampilkan dalam gambar), panel ini menampilkan editor layout dengan alat untuk mengedit layout. Setelah
memilih file kode Java, panel ini menampilkan kode dengan alat untuk mengedit kode.
4. Bilah Status. Bilah status menampilkan status proyek dan Android Studio itu sendiri, serta peringatan atau pesan apa
pun. Anda bisa mengamati kemajuan pembangunan di bilah status.
5. Panel Project. Panel proyek menampilkan file proyek dan hierarki proyek.
6. Panel Monitor. Panel monitor menawarkan akses ke daftar TODO untuk mengelola tugas, Android Monitor untuk
memantau eksekusi aplikasi (ditampilkan dalam gambar), logcat untuk menampilkan pesan log, dan aplikasi Terminal
untuk melakukan aktivitas Terminal.
Tip: Anda bisa mengatur jendela utama untuk memberi Anda lebih banyak ruang layar dengan menyembunyikan atau
memindahkan panel. Anda juga bisa menggunakan pintasan keyboard untuk mengakses lebih banyak fitur. Lihat Pintasan
Keyboard untuk daftar lengkap.
Untuk beralih kembali ke tampilan ini dari tampilan lainnya, klik tab Project vertikal di kolom paling kiri panel Project, dan
pilih Android dari menu munculan di bagian atas panel Project, seperti yang ditampilkan dalam gambar di bawah ini.
Untuk menampilkan file ini, luaskan folder manifes di Project: Tampilan Android, dan klik dua kali file
(AndroidManifest.xml). Isinya muncul di panel pengeditan seperti yang ditampilkan dalam gambar di bawah ini.
xmlns:android "http://schemas.android.com/apk/res/android"
package "com.example.android.helloworld">
Ekspresi package menampilkan nama paket unik aplikasi baru. Jangan mengubah ini setelah aplikasi dipublikasikan.
<application
...
</application>
Tag <application , dengan tag </application> penutupnya, mendefinisikan setelan manifes untuk keseluruhan aplikasi.
Cadangan otomatis
Atribut android:allowBackup memungkinkan pencadangan data aplikasi otomatis:
...
android:allowBackup "true"
...
Untuk aplikasi dengan versi SDK target berupa Android 6.0 (API level 23) dan yang lebih tinggi, perangkat yang
menjalankan Android 6.0 dan yang lebih tinggi secara otomatis membuat cadangan data aplikasi ke awan karena atribut
android:allowBackup default ke true jika dihilangkan. Untuk aplikasi < API level 22, Anda harus secara eksplisit
menambahkan atribut android:allowBackup dan menyetelnya ke true .
Tip: Untuk mengetahui selengkapnya tentang pencadangan otomatis untuk aplikasi, lihat Mengonfigurasi Cadangan
Otomatis untuk Aplikasi.
Ikon aplikasi
Metode android:icon menyetel ikon untuk aplikasi:
...
android:allowBackup "true"
android:icon "@mipmap/ic_launcher"
...
Atribut android:icon menetapkan ikon di folder mipmap (di dalam folder res di Project: tampilan Android) untuk aplikasi.
Ikon muncul di Peluncur untuk meluncurkan aplikasi. Ikon juga digunakan sebagai ikon default untuk komponen aplikasi.
...
android:label "@string/app_name"
...
Tip: Ctrl - klik atau klik-kanan app_name di panel edit untuk melihat menu konteks. Pilih Go To > Declaration untuk melihat
lokasi sumber daya string dideklarasikan: dalam file strings.xml. Bila Anda memilih Go To > Declaration atau membuka file
dengan mengeklik dua kali strings.xml di Project: Tampilan Android (di dalam folder values), isinya muncul di panel
pengeditan.
Setelah membuka file strings.xml, Anda bisa melihat bahwa nama string app_name disetel ke Hello World . Anda bisa
mengubah nama aplikasi dengan mengubah string Hello World ke hal lain. Sumber daya string dijelaskan dalam
pelajaran terpisah.
Tema aplikasi
Atribut android:theme menyetel tema aplikasi, yang mendefinisikan penampilan elemen antarmuka pengguna seperti teks:
...
android:theme "@style/AppTheme">
...
Atribut theme disetel ke tema standar AppTheme . Tema dijelaskan dalam pelajaran terpisah.
API level memungkinkan developer untuk mendeklarasikan versi minimum dengan aplikasi yang kompatibel,
menggunakan tag manifes <uses-sdk> dan atribut minSdkVersion . Misalnya, Calendar Provider API telah ditambahkan di
Android 4.0 (API level 14). Jika aplikasi Anda tidak berfungsi tanpa API tersebut, deklarasikan API level 14 sebagai versi
yang didukung minimum aplikasi seperti ini:
Atribut minSdkVersion mendeklarasikan versi minimum untuk aplikasi, dan atribut targetSdkVersion mendeklarasikan
versi tertinggi (terbaru) yang telah dioptimalkan dalam aplikasi. Setiap versi Android yang berurutan menyediakan
kompatibilitas untuk aplikasi yang dibangun menggunakan API dari versi sebelumnya, sehingga aplikasi akan selalu
kompatibel dengan versi Android mendatang sambil menggunakan Android API yang didokumentasikan.
Atribut targetSdkVersion tidak mencegah aplikasi dipasang pada versi Android yang lebih tinggi (yang lebih baru)
dibandingkan nilai yang ditetapkan, namun hal ini penting karena menunjukkan pada sistem apakah aplikasi harus
mewarisi perubahan perilaku di versi yang baru. Jika Anda tidak memperbarui targetSdkVersion ke versi terbaru, sistem
akan menganggap bahwa aplikasi memerlukan perilaku kompatibilitas mundur saat dijalankan pada versi terbaru.
Misalnya, di antara perubahan perilaku di Android 4.4, alarm yang dibuat dengan AlarmManager API saat ini tidak tepat
secara default sehingga sistem bisa mengumpulkan alarm aplikasi dan mempertahankan kekuatan sistem, namun sistem
akan menahan perilaku API sebelumnya untuk aplikasi jika API level target Anda lebih rendah daripada "19" .
1. Klik folder modul untuk meluaskan dan menampilkan file MainActivity untuk aktivitas yang ditulis di Java (kelas
MainActivity ).
2. Klik dua kali MainActivity untuk melihat file sumber di panel pengeditan, seperti yang ditampilkan dalam gambar di
bawah ini.
import android.support.v7.app.AppCompatActivity;
Setiap aktivitas dalam aplikasi diimplementasikan sebagai kelas Java. Deklarasi kelas berikut memperluas kelas
AppCompatActivity untuk mengimplementasikan fitur dengan cara yang kompatibel-mundur dengan Android versi
sebelumnya:
Seperti yang Anda pelajari terdahulu, sebelum sistem Android bisa memulai komponen aplikasi seperti aktivitas, sistem
harus mengetahui bahwa aktivitas ada dengan membaca file AndroidManifest.xml aplikasi. Oleh karena itu, setiap aktivitas
harus dicantumkan di file AndroidManifest.xml.
Android Studio menampilkan tampilan Desain layout, seperti yang ditampilkan dalam gambar di bawah ini. Tampilan ini
menyediakan panel Palette elemen antarmuka pengguna, dan petak yang menampilkan layout layar.
Android Studio menggunakan Gradle sebagai dasar sistem pembangunan, dengan kemampuan khusus Android lebih
banyak yang disediakan oleh Android Plugin for Gradle. Sistem pembangunan ini berjalan sebagai alat (bantu) terintegrasi
dari menu Android Studio.
Bila Anda membuat proyek, Android Studio secara otomatis menghasilkan file pembangunan penting di folder Gradle
Scripts dalam Project: Tampilan Android. File pembangunan Android Studio diberi nama build.gradle seperti yang
ditampilkan di bawah ini:
android {
compileSdkVersion 24
buildToolsVersion "24.0.1"
defaultConfig {
applicationId "com.example.android.helloworld2"
minSdkVersion 15
targetSdkVersion 24
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
rilis {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:24.2.1'
testCompile 'junit:junit:4.12'
}
File build.gradle menggunakan sintaks Gradle. Gradle adalah Domain Specific Language (DSL) untuk menjelaskan dan
memanipulasi logika pembangunan dengan menggunakan Groovy, yang merupakan bahasa dinamis untuk Java Virtual
Machine (JVM). Anda tidak perlu mempelajari Groovy untuk melakukan perubahan, karena Android Plugin for Gradle
memperkenalkan sebagian besar elemen DSL yang Anda perlukan.
Tip: Untuk mengetahui selengkapnya tentang DSL plugin Android, baca Dokumentasi referensi DSL.
android {
...
}
compileSdkVersion 24
buildToolsVersion "24.0.1"
...
defaultConfig {
applicationId "com.example.hello.helloworld"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
testInstrumentationRunner
"android.support.test.runner.AndroidJUnitRunner"
}
...
Setelan minSdkVersion dan targetSdkVersion menggantikan setelan AndroidManifest.xml untuk versi SDK minimum dan
versi SDK target. Lihat "Mendeklarasikan versi Android" sebelumnya di bagian ini untuk informasi latar belakang tentang
setelan ini.
Pernyataan testInstrumentationRunner ini menambahkan dukungan instrumentasi untuk menguji antarmuka pengguna
dengan Espresso dan UIAutomator. Hal ini dijelaskan dalam pelajaran terpisah.
Tipe pembangunan
Tipe pembangunan untuk aplikasi ditetapkan di blok buildTypes { } , yang mengontrol cara aplikasi dibangun dan
dipaketkan.
...
buildTypes {
rilis {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'),
'proguard-rules.pro'
}
}
...
Tipe pembangunan yang ditetapkan adalah release untuk rilis aplikasi. Tipe pembangunan umum lainnya adalah debug .
Mengonfigurasi tipe pembangunan dijelaskan dalam pelajaran terpisah.
Dependensi
Dependensi untuk aplikasi didefinisikan di blok dependencies { } , yang merupakan bagian file build.gradle yang paling
mungkin berubah saat Anda mulai mengembangkan kode yang bergantung pada pustaka. Blok adalah bagian dari Gradle
API standar dan termasuk di luar blok android { } .
...
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:24.2.0'
testCompile 'junit:junit:4.12'
}
Dalam cuplikan di atas, pernyataan compile fileTree(dir: 'libs', include: ['*.jar']) menambahkan dependensi semua
file ".jar" di dalam direktori libs . Konfigurasi compile akan mengompilasi aplikasi utama — segala sesuatu di dalamnya
ditambahkan ke classpath kompilasi, dan juga dipaketkan ke dalam APK final.
Untuk menyinkronkan file proyek, klik Sync Now di bilah notifikasi yang muncul saat membuat perubahan, atau klik Sync
Project dari bilah menu. Jika Android Studio memperlihatkan kesalahan apa pun dengan konfigurasi — misalnya, jika kode
sumber menggunakan fitur API yang hanya tersedia di API level yang lebih tinggi dari compileSdkVersion — jendela
Messages muncul untuk menjelaskan masalah.
Pengelola Android Virtual Device (AVD) membuat perangkat virtual atau emulator yang menyimulasikan konfigurasi untuk
tipe perangkat Android tertentu. Gunakan AVD Manager untuk mendefinisikan karakteristik perangkat keras perangkat dan
API levelnya, dan untuk menyimpannya sebagai konfigurasi perangkat virtual. Ketika Anda memulai emulator Android,
emulator akan membaca konfigurasi yang ditetapkan dan membuat perangkat emulasi pada komputer yang berperilaku
sama persis dengan versi fisik perangkat.
perangkat virtual. Pilih Tools > Android > AVD Manager, atau klik ikon AVD Manager di bilah alat.
Layar "Your Virtual Devices" muncul menampilkan semua perangkat virtual yang dibuat sebelumnya. Klik tombol +Create
Virtual Device untuk membuat perangkat virtual baru.
Anda bisa memilih perangkat dari daftar perangkat keras yang telah didefinisikan sebelumnya. Untuk setiap perangkat,
tabel menampilkan ukuran tampilan diagonal (Size), resolusi layar dalam piksel (Resolution), dan kepadatan piksel
(Density). Misalnya, kepadatan piksel perangkat Nexus 5 adalah xxhdpi , artinya aplikasi menggunakan ikon di folder
Anda juga memilih versi sistem Android untuk perangkat. Tab Recommended menampilkan sistem yang disarankan untuk
perangkat. Lebih banyak versi tersedia di dalam tab x86 Images dan Other Images.
1. Di Android Studio, pilih Run > Run app atau klik Run icon di bilah alat.
2. Di jendela Select Deployment Target, pada Emulator yang tersedia, pilih perangkat virtual yang Anda buat, dan klik
OK.
Emulator memulai dan mem-booting seperti perangkat fisik. Ini memerlukan waktu beberapa saat, bergantung pada
kecepatan komputer Anda. Aplikasi membangun, dan setelah emulator siap, Android Studio mengunggah aplikasi ke
emulator dan menjalankannya.
Anda harus melihat aplikasi yang dibuat dari template Empty Activity ("Hello World") seperti yang ditampilkan dalam
gambar berikut ini, yang juga menampilkan panel Run Android Studio yang menampilkan tindakan yang dilakukan untuk
menjalankan aplikasi di emulator.
Catatan: Saat menguji pada emulator, praktik yang baik adalah memulainya sekali pada awal sesi, dan jangan
menutupnya hingga selesai sehingga tidak perlu melalui proses booting kembali.
Untuk memungkinkan Android Studio berkomunikasi dengan perangkat, aktifkan USB Debugging pada perangkat Android.
Pada versi Android 4.2 dan yang lebih baru, layar opsi Developer disembunyikan secara default. Ikuti langkah-langkah ini
untuk mengaktifkan USB Debugging:
1. Pada perangkat fisik, buka Settings dan pilih About phone di bagian bawah layar Settings.
2. Ketuk informasi Build number tujuh kali.
3. Kembali ke layar sebelumnya (Settings). Developer Options saat ini muncul di bagian bawah layar. Ketuk Developer
options.
4. Pilih USB Debugging.
4. Anda mungkin perlu memasang driver USB yang sesuai untuk perangkat. Lihat dokumentasi Menggunakan Perangkat
Keras.
5. Periksa dokumentasi terakhir, forum pemrograman, atau dapatkan bantuan dari instruktur Anda.
Menggunakan log
Log merupakan alat (bantu) debug andal yang bisa Anda gunakan untuk melihat nilai, jalur eksekusi, dan pengecualian.
Setelah menambahkan pernyataan log ke aplikasi, pesan log Anda akan muncul bersama pesan log umum di tab logcat
panel Android Monitor di Android Studio.
Untuk melihat panel Android Monitor, klik tombol Android Monitor di bagian bawah jendela utama Android Studio. Android
Monitor menawarkan dua tab:
Tab logcat. Tab logcat menampilkan pesan log tentang aplikasi saat aplikasi berjalan. Jika menambahkan pernyataan
logging ke aplikasi, pesan log Anda dari pernyataan tersebut muncul dengan pesan log lain di bawah tab ini.
Tab Monitors. Tab Monitors memantau kinerja aplikasi, yang bisa digunakan untuk men-debug dan menyesuaikan
kode Anda.
Misalnya, pernyataan log berikut menambahkan "MainActivity" dan "Hello World" ke log:
1. Definisikan tag log sebagai konstanta sebelum menggunakannya dalam pernyataan log:
3. "Hello World" : Argumen kedua adalah pesan sebenarnya yang muncul setelah log level dan tag log pada tab logcat.
Secara default, tampilan log disetel ke Verbose di menu tarik-turun di bagian atas tampilan logcat untuk menampilkan
semua pesan. Anda bisa mengubahnya menjadi Debug untuk melihat pesan yang dimulai dengan Log.d , atau
mengubahnya menjadi Error untuk melihat pesan yang dimulai dengan Log.e , dan seterusnya.