0% menganggap dokumen ini bermanfaat (0 suara)
4 tayangan

Pdfcoffee.com Pemrograman Android Mobile Devices Programming PDF Free

Dokumen ini menjelaskan tentang pemrograman Android menggunakan Android Studio, termasuk tujuan, alat yang diperlukan, dan dasar teori mengenai Android dan Android Studio. Selain itu, dokumen ini juga menjelaskan komponen aplikasi Android, langkah-langkah untuk membuat aplikasi sederhana, serta coding yang diperlukan untuk menjalankan aplikasi tersebut. Material Design juga dibahas sebagai prinsip desain untuk aplikasi Android yang lebih modern.

Diunggah oleh

Iran
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
4 tayangan

Pdfcoffee.com Pemrograman Android Mobile Devices Programming PDF Free

Dokumen ini menjelaskan tentang pemrograman Android menggunakan Android Studio, termasuk tujuan, alat yang diperlukan, dan dasar teori mengenai Android dan Android Studio. Selain itu, dokumen ini juga menjelaskan komponen aplikasi Android, langkah-langkah untuk membuat aplikasi sederhana, serta coding yang diperlukan untuk menjalankan aplikasi tersebut. Material Design juga dibahas sebagai prinsip desain untuk aplikasi Android yang lebih modern.

Diunggah oleh

Iran
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 12

BAB III

PEMROGRAMAN ANDROID MENGGUNAKAN ANDROID STUDIO


3.1 Tujuan
1. Praktikan mampu mengetahui lingkungan pengembangan Android
2. Praktikan memahami siklus activity pada aplikasi Android
3. Praktikan dapat membuat program Android sederhana
4. Praktikan dapat men-deploy aplikasi ke emulator atau device

3.2 Alat dan Bahan


1. PC / Notebook (minimal RAM 2GB)
2. Android Studio Release Candidate 1.4, JDK, Android SDK
3. Device Android dan kabel USB (wajib)

3.3 Dasar Teori


3.3.1 Android
Android adalah sistem operasi untuk telepon seluler yang
berbasiskan Linux. Android menyediakan platform terbuka bagi para
pengembang untuk menciptakan aplikasi mereka sendiri sehingga dapat
digunakan oleh bermacam peranti penggerak.
Android tersedia secara open source bagi manufaktur perangkat
keras untuk memodifikasi sesuai kebutuhan. Meskipun konfigurasi
perangkat Android tidak sama antara satu dengan yang lain, namun
Android sendiri mendukung beberapa fitur berikut ini:
a. Penyimpanan (Storage) - menggunakan SQLite yang merupakan basis
data relasional yang ringan untuk menyimpan data.
b. Koneksi(Connectivity) - Mendukung GSM/EDGE, IDEN, CDMA,
EVDO, UMTS, Bluetooth, WiFi, LTE, dan WiMAX.
c. Pesan (Messaging) Mendukung SMS dan MMS
d. Web Browser - Menggunakan open source WebKit termasuk di
dalamnya engine Chrome V8 JavaScript.
e. Media - media di dukung antara lain : H.263, H.264, MPEG-4 SP,
AMR, AMR-WB, AAC, HE-AAC, MP3, MIDI, Ogg Vorbis, JPEG,
PNG, GIF, dan BMP.
f. Perangkat keras - terdapat Accelerometer Sensor, kamera, kompas
digital, sensor proximity, dan GPS.
g. Multi-touch - mendukung layar multi-touch
h. Multi-tasking - mendukung aplikasi multi-tasking.
i. Dukungan Flash - Android 2.3 mendukung Flash 10.1
3.3.2 Android Studio
Android Studio adalah sebuah perangkat lunak baru untuk
pengembangan aplikasi berbasis Android yang berbasis IntelliJ IDEA.
Beberapa fitur yang ada pada Android Studio adalah sebagai berikut:
a. Sistem build yang fleksibal berbasis Gradle,
b. Mempunyai banyak macam generasi APK dan variasi build,
c. Mendukung template untuk layanan Google dan berbagai macam tipe
perangkat,
d. Tampilan editor yang kaya dan juga mendukung untuk perubahan tema,
e. Menyediakan peralatan Lint untuk merekam kinerja, penggunaan,
kompabilitas versi, dan permasalahan lainnya,
f. Mempunyai fasilitas ProGuard dan app-signing untuk aplikasi,
g. Mendukung Google Cloud Platform yang memudahkan untuk
melakukan integrasi Google Cloud Messaging dan App Engine.
Berikut penjelasan fungsi dari bagian-bagian yang berada di perangkat lunak
Android Studio:
a. Title Bar adalah baris yang menunjukkan nama projek yang berada di
layar utama.
b. Menu Bar adalah kumpulan menu yang berisi daftar perintah untuk
pengolahan data yang akan atau sedang dibuat.
c. Tool Bar adalah kumpulan menu yang memiliki fungsi spesifik untuk
mengolah projek yang sedang dikerjakan
d. Navigation Bar adalah baris yang menunjukkan navigasi direktori dari
jendela yang sedang dibuka.
e. Project Bar menunjukkan ikhtisar dari semua yang ada di dalam project.
f. Structure Bar menujukkan struktur isi dari file yang sedang dibuka.
g. Commander Bar menunjukkan direktori folder pada projek beserta
strukturnya dalam dua tampilan sekaligus.
h. Gradle Bar untuk menunjukkan task yang akan dibangun.
i. Android Bar menunjukkan perangkat yang akan digunakan untuk
menampilkan hasil program setelah dibangun serta terdapat tampilan log
program.

3.3.3 Komponen Aplikasi


Sebuah fitur utama Android adalah satu aplikasi yang dapat
menggunakan unsur- unsur aplikasi lain. Misalnya, jika aplikasi anda
perlu menampilkan scroll gambar namun ada aplikasi lain yang telah
mengembangkanya, maka anda hanya perlu memanggil scroller tersebut
untuk melakukan pekerjaan tanpa harus mengembangkannya sendiri.
Cara kerjanya, sistem harus mulai melakukan proses aplikasi
ketika ada bagian yang diperlukan untuk di instansiasi object Java nya. Oleh
karena itu tidak seperti sistem aplikasi lainnya, Android tidak memiliki entry
point tunggal untuk semua aplikasi (misalnya Android tidak mempunyai
fungsi main() method ). Namun sebaliknya Android memiliki komponen
penting dimana sistem dapat menginstansiasi object dan menjalankannya
sesuai kebutuhan. Komponen -komponen tersebut yaitu:
a. Activity
Activity adalah sebuah layar tunggal dari user interface. Activity ini
merupakan hierarki halaman dengan navigasi untuk memberikan fungsi-
fungsi tertentu yang dibutuhkan oleh UI. Dalam sebuah aplikasi biasanya
terdapat satu atau lebih activity.
Activity bekerja independen meskipun membentuk UI dengan
bekerja sama dengan activity lain. Kelas dasar dari obyek dalam activity
adalah kelas View dengan method setContextView(). Beberapa contoh
jenis view adalah Text Field, Edit Text, Scrollbar, Menu, Check Box, dan
lain sebagainya.

Tabel 1 Method pada Android

b. Service
Service adalah kelas tanpa user interface (Activity adalah kelas
dengan UI), sehingga dapat dijalankan di background dalam thread yang
terpisah. Contoh kerja service adalah ketika anda sedang
mendengarkan musik, kemudian anda ingin mengirim sms atau
email. Dalam kasus ini tentu saja anda bisa melakukan keduanya karena
ketika anda mengirim sms atau email, musik akan bekerja sebagai
background.
c. Content Providers
Sebuah Content Provider atau penyedia konten menyimpan data
yang dapat di akses oleh aplikasi lain. Jadi disini bisa berbagi data dengan
berbagai aplikasi yang disimpan dalam paket android provider. Jenis
data yang disimpan adalah jenis data yang umum seperti audio, video,
informasi kontak, dan lain sebagainya.
Sebenarnya Content Provider juga menyimpan data di user
interface sebagai penyedia query dan pengembalian nilai data seperti
untuk menambah, mengubah dan menghapus data. Data ini dapat
disimpan dalam file atau database SQLite.

d. Event
Event adalah sesuatu yang tidak kita kontrol dan sesuatu yang kita
tidak tahu kapan akan terjadi. Untuk itu kita menggunakan Events
Controllers untuk setiap event yang bisa terjadi. Ada beberapa macam
Event Controller seperti Event Listener, Event Handler, Touch Mode dan
Handling focus.
Event Listener adalah sebuah objek yang diberitahu pada saat
suatu event terjadi pada event source. Event listener diimplementasikan
ke dalam bentuk method dalam suatu interface. Beberapa method
yang termasuk event listener adalah:
 onClick()
 onLongClick()
 onFocusChange()
 onKey()
 onTouch()
 onCreateContextMenu()

e. Event Handlers
Event adalah sebuah message yang dikirim oleh sebuah object untuk
menandai kejadian sebuah aksi. Handler adalah sebuah method
yang akan diisikan (atau diikatkan) pada event. Jadi event handler adalah
suatu fungsi atau method yang mengandung statement program
untuk menangani input yang diterima ke dalam event. Berikut ini
merupakan method-method event handling :
 onKeyUp()
 onKeyDown()
 onTrackBallEvent()
 onTouchEvent()
 onFocusChanged()

f. Resources
Resources adalah elemen externall yang kita gunakan dalam
aplikasi. Resource disimpan dalam file xml yang berada dalam floder res.
Resource tersedia dalam kode java menggunakan R.java file. File R.java
ini untuk menghubungkan sumber daya visual (dari main.xml) ke kode
sumber java (file java yang berada di Activity class).

3.3.4 Material Design


Material Design merupakan prinsip desain fundamental yang
dikembangkan Google untuk Android versi terbaru yaitu mulai dari versi 5.0
Lollipop ke atas. Material design dirancang dengan menggunakan elemen-
elemen yang clean and clear, kombinasi tipografi, kombinasi warna, animasi
yang dinamis dan smooth, serta prinsip-prinsip lainnya.
Material design sudah tersedia pada Android Studio RC 1.4 dan
menjadi UI default saat membuat project baru. Beberapa elemen yang
tersedia adalah navigation bar, navigation drawer, button, textfield, fly out
button, pop up menu, tabbed navigation, refresh gesture, dan banyak lagi.
Material design: https://www.google.com/design/spec/

Gambar 1 Material Design di Android Studio

3.4 Langkah Percobaan


3.4.1 Mengatur Device Android
1. Pengaturan  Opsi Pengembang  Ubah menjadi “aktif” 
aktifkan Debugging USB
3.4.2 Membuat Project Baru Aplikasi Android
1. Buka Android Studio RC 1.4
2. Klik menu File  New  New Project
Gambar 2 New Project

3. Isikan nama aplikasi dan domain perusahaan  Next

Gambar 3 Nama Aplikasi

4. Pilih minimum SDK: API 15 (Android 4.0 Ice Cream Sandwich)


5. Pilih Empty Activity
6. Isikan nama activity dan nama layout (biarkan saja default
MainActivity dan activity_main)  Finish

3.4.3 Membuat UI Aplikasi Android


1. Pada file activity_main.xml, ubah RelativeLayout menjadi
LinearLayout lalu tambahkan:
android:orientation="vertical"

2. Lalu di antara tag LinearLayout masukkan code berikut.


<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="First Number:"/>

<EditText
android:id="@+id/number1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:inputType="number" />

<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Second Number:"/>

<EditText
android:id="@+id/number2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="number" />

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="20dp"
android:orientation="horizontal">
<Button
android:id="@+id/bTambah"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/tambah" />

<Button
android:id="@+id/bKurang"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/kurang" />

<Button
android:id="@+id/bKali"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/kali" />

<Button
android:id="@+id/bBagi"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/bagi" />
</LinearLayout>

3. Hasilnya akan seperti berikut

Gambar 4 Layout activity_main.xml

4. Klik kanan folder layout  New  Activity  Empty


Activity
Gambar 5 Membuat Activity Baru

5. Beri nama class HasilActivity dengan layout activity_hasil.xml


6. Edit Relative menjadi Linear dan tambahkan orientasi vertical
7. Masukkan code berikut
<TextView
android:id="@+id/textHasil"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_gravity="center_horizontal"
android:layout_weight="1"
android:gravity="center_vertical"
android:text="Hasil: "
android:textSize="75sp" />

<Button
android:id="@+id/bHitungLagi"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Hitung Lagi" />

8. Hasilnya akan seperti berikut


Gambar 6 Layout activity_hasil.xml

3.4.4 Coding Aplikasi


1. Buka MainActivity.java. Tambahkan pada baris class
MainActivity()
implements View.OnClickListener

2. Buat variabel-variabel yang dibutuhkan


Button add, sub, mul, div;
EditText num1, num2;
Float angka1, angka2, answer;

3. Tambahkan pada method OnCreate()


//inisialisasi objek
add = (Button) findViewById(R.id.bTambah);
sub = (Button) findViewById(R.id.bKurang);
mul = (Button) findViewById(R.id.bKali);
div = (Button) findViewById(R.id.bBagi);
num1 = (EditText) findViewById(R.id.number1);
num2 = (EditText) findViewById(R.id.number2);

//menambahkan method OnClick pada setiap tombol


add.setOnClickListener(this);
sub.setOnClickListener(this);
mul.setOnClickListener(this);
div.setOnClickListener(this);

4. Buat method untuk mendapatkan nilai input


protected Float[] opInput() {
try {
angka1 =
Float.valueOf(num1.getText().toString());
num1.setText(null);
} catch (Exception e) {
angka1 = null;
}
try {
angka2 =
Float.valueOf(num2.getText().toString());
num2.setText(null);
} catch (Exception e) {
angka2 = null;
}
return new Float[]{angka1, angka2};
}
5. Buat method untuk melakukan operasi penghitungan
protected Float opHitung(String op) {
Float angka[] = opInput();
try {
switch (op) {
case "add":
answer = angka[0] + angka[1];
break;
case "sub":
answer = angka[0] - angka[1];
break;
case "mul":
answer = angka[0] * angka[1];
break;
case "div":
answer = angka[0] / angka[1];
break;
}
return answer;
} catch (Exception e) {
if (angka[0] == null && angka[1] != null) {
Toast.makeText(getApplicationContext(),
"Harap lengkapi isian pertama",
Toast.LENGTH_SHORT).show();
} else if (angka[0] != null && angka[1] == null)
{
Toast.makeText(getApplicationContext(),
"Harap lengkapi isian kedua",
Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(getApplicationContext(),
"Harap lengkapi semua isian",
Toast.LENGTH_SHORT).show();
}
return null;
}
}
6. Buat method OnClick() agar tombol operator berfungsi
public void onClick(View v) {
switch (v.getId()) {
case R.id.bTambah:
opHitung("add");
intentHasil(answer);
break;
case R.id.bKurang:
opHitung("sub");
intentHasil(answer);
break;
case R.id.bBagi:
opHitung("div");
intentHasil(answer);
break;
case R.id.bKali:
opHitung("mul");
intentHasil(answer);
break;
}
}
7. Buat method untuk berpindah intent dan mengirim variabel ke
intent tersebut
//mengambil hasil dan mengirimkan ke intent
protected void intentHasil(Float answer) {
try {
float ans = answer;
Intent intentHasil = new
Intent(MainActivity.this, HasilActivity.class);
intentHasil.putExtra("ans", answer);
startActivity(intentHasil);
resetVariabel();
} catch (Exception e) {

}
}

8. Tambahkan method resetVariabel() untuk mereset input setelah


selesai menghitung
protected void resetVariabel() {
num1.setText(null);
angka1 = null;
num2.setText(null);
angka2 = null;

answer = null;

9. Buka HasilActivity.java. Tambahkan variabel-variabel yang


dibutuhkan
Float answer;
TextView ans;

10. Inisialisasi tombol Hitung Lagi dan beri method OnClick()


untuk mengakhiri activity agar kembali ke MainActivity
Button itungLagi = (Button)
findViewById(R.id.bHitungLagi);
ans = (TextView) findViewById(R.id.textHasil);
//method tombol back
itungLagi.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v) {
finish();
}
});

11. Tambahkan method showHasil() untuk menampilkan hasil di


intent baru pada HasilActivity
protected void showHasil(){
Intent i = getIntent();
answer = i.getFloatExtra("ans", 0);
ans.setText(String.valueOf(answer));
}

12. Panggil method showHasil() pada method onCreate() dan


letakkan dibawah inisialisasi tombol Hitung Lagi
showHasil();

Anda mungkin juga menyukai