02 activity

15
 BAB 2  Activity Pemrograman Perangkat Mobile Teknik Informatika-Program Teknologi Informasi dan Ilmu Komputer Universitas Brawijaya Modul Bahan Ajar UBDistanceLearning Pemrograman Perangkat Mobile Eriq Muhammad Adams J, ST., M.Kom; Widhy Hayuhardhika, S.Kom 

Upload: ardy-nugroho

Post on 16-Oct-2015

27 views

Category:

Documents


0 download

TRANSCRIPT

BAB 2 Activity

Pemrograman Perangkat Mobile - BAB 2 Activity

Pemrograman Perangkat Mobile- BAB 2 Activity

Modul Bahan Ajar UBDistanceLearningPemrograman Perangkat Mobile

Eriq Muhammad Adams J, ST., M.Kom; Widhy Hayuhardhika, S.Kom - Teknik Informatika-Program Teknologi Informasi dan Ilmu KomputerPendahuluan Untuk membuat sebuah user interface dalam aplikasi kita biasa membutuhkan sebuah window atau form. Dalam android proses pembuatan window atau form ditangani oleh Activity. Pada bab ini akan dijelaskan mengenai konsep dan implementasi dari Activity.

Tujuan Instruksional Khusus

Perancangan modul pada bab ini bertujuan agar mahasiswa mampu : 1. Memahami konsep Activity.2. Memahami siklus Activity.3. Membuat aplikasi menggunakan Activity.

Daftar Materi

1. PENGENALAN ACTIVITY1.1 Definisi Activity1.2 Konsep Activity1.3 Siklus Activity1.4 Android Manifest

2. CONTOH IMPLEMENTASI ACTIVITY2.1 Project 1 : Jam 12.2 Project 2 : Jam 22.3 Project 3 : Sub Activity

3. SOAL

1. PENGENALAN1.1 Definisi ActivityActivity merupakan class dalam aplikasi android untuk menangani interaksi pengguna dan GUI (Graphical User Interface).

1.2 Konsep ActivitySebuah class Activity mempunyai dua method overriding yaitu :a. onCreate() yang berisi prosedur untuk inisialiasi sebuah activity. Dalam inisialisasi activity perintah setContentView(int) biasa dipanggil menampilkan layout serta perintah findById(int) biasa dipanggil untuk mendapatkan instance object yang didefinisikan dalam file layout XML.b. onPause() yang berisi prosedur ketika activity berada dalam state pause.

1.3 Siklus ActivityActivity Stack digunakan untuk mengelola activity-activity yang dijalankan. Activity secara default mempunyai siklus, yang terdiri dari 4 state atau keadaan :1. Active / running, terjadi ketika activity berada pada posisi atas stack2. Pause, terjadi ketika activity masih ada tapi tidak berjalan.3. Stopped, terjadi ketika activity sudah tidak berjalan.4. Restart, terjadi ketika activity yang berada pada state Stopped dijalankan kembali.Gambar 1.1 adalah gambaran activity lifecycle atau satu siklus activity di dalam aplikasi android.

Gambar 1.1 Siklus Activity

Berdasarkan siklus activity diatas masa hidup activity dapat dibagi menjadi :1. Entire lifetime, yaitu masa hidup dari onCreate() sampai dengan onDestroy().2. Visible lifetime, yaitu masa hidup dari onCreate() sampai dengan onStop().3. Foreground lifetime, yaitu masa hidup antara onResume() dan onPause().1.4 Android ManifestFile AndroidManifest.xml merupakan deskripsi metadata dan konfigurasi aplikasi android. Gambar 1.2 merupakan contoh AndroidManifest.xml.

Gambar 1.2 Contoh AndroidManifest.xml

Berikut merupakan tag-tag yang digunakan dalam file AndroidManifest.xml :

Merupakan tag root mempunyai atribut antara lain versi aplikasi, nama paket aplikasi serta beberapa sub tag antara lain , . Mendeskripsikan security permission yang digunakan aplikasi. Contoh : Mendeskripsikan batasan tentang user permisson/security permission. Mendeskripsikan komponen instrumen untuk menguji fungsionalitas paket aplikasi yang digunakan. Mendeskripsikan icon, nama aplikasi, activity utama. Contoh : Mendeskripsikan intent yang digunakan dalam aplikasi. Mendeskripsikan tipe action yang didukung. Mendeskripsikan kategori aplikasi. Mendeskripsikan tipe MIME, URL. Mendeskripsikan metadata aplikasi. Mendeskripsikan klas yang bertindak sebagai receiver atau penerima notifikasi sistem. Mendeskripsikan bagian aplikasi yang berjalan sebagai service. Medeskripsikan klas yang bertindak sebagai provider Mendeskripsikan versi Android SDK yang digunakan: 1 mewakili Android 1.0 SDK 2 mewakili Android 1.1 SDK 3 mewakili Android 1.5 SDK 4 mewakili Android 1.6 SDK 5 mewakili Android 2.0 SDK 6 mewakili Android 2.0 SDK 7 mewakili Android 2.0 Update(2.0.1) SDK 8 mewakili Android 2.2 SDK 9 mewakili Android 2.3 SDK

2. CONTOH IMPLEMENTASI ACTIVITY2.1 Project 1 : Jam 1Pada Project 1 akan dibuat program android sederhana untuk menampilkan waktu sistem menggunakan konsep activity.

Buat project android dengan ketentuan sebagai berikut : Project name : Jam1 Build Target : Android 2.1 Application Name : jam1 Package name : id.ac.ub.ptiik.jam1 Activity: Jam1Activity Min SDK : 7

Jam1Activity.java

package id.ac.ub.ptiik.jam1;

import android.app.Activity;import android.os.Bundle;import android.widget.Button;import android.view.View;import android.view.View.OnClickListener;import java.util.Date;

public class Jam1Activity extends Activity implements OnClickListener { /** Called when the activity is first created. */Button button; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); button = new Button(this); button.setOnClickListener(this); updateTime(); setContentView(button); }@Overridepublic void onClick(View v) {// TODO Auto-generated method stubupdateTime();}private void updateTime(){button.setText(new Date().toString());}}

main.xml

Apabila aplikasi jam1 dijalankan, tampilannya seperti ditunjukkan dalam Gambar 1.3.

Gambar 1.3 Tampilan Project : Jam 1

Activity dibuat dengan melakukan extends dari class android.app.Activity. Dalam kode program diatas ada beberapa method penting yaitu : onCreate() berisi prosedur untuk inisialisasi activity. Di dalam method onCreate, dibuat instance dari object yang bertipe android.widget.Button dengan perintah button = new Button(this) serta di tambahkan event handler android.view.View.OnClickListener dengan perintah button.setOnClickListener(this). onClick() berisi prosedur event handler dari object button, dalam method onclick() akan dipanggil method updateTime(). updateTime() berisi prosedur pengisian button label dengan waktu sistem.2.2 Project 2 : Jam 2Pada Project 2 akan dibuat program android sederhana untuk menampilkan waktu sistem dengan menggunakan struktur layout yang disimpan dalam file layout XML berbeda dengan Project 1 yang tidak menggunakan file layout XML.

Buat project android dengan ketentuan sebagai berikut : Project name : Jam2 Build Target : Android 2.1 Application Name : jam2 Package name : id.ac.ub.ptiik.jam2 Activity: Jam2Activity Min SDK : 7

Jam2Activity.java

package id.ac.ub.ptiik.jam2;

import android.app.Activity;import android.os.Bundle;import android.widget.Button;import android.view.View;import android.view.View.OnClickListener;import java.util.Date;

public class Jam2Activity extends Activity implements OnClickListener { /** Called when the activity is first created. */Button button; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); button = (Button)findViewById(R.id.button); button.setOnClickListener(this); updateTime(); }

@Overridepublic void onClick(View v) {// TODO Auto-generated method stubupdateTime();}private void updateTime(){button.setText(new Date().toString());}}

main.xml

Peletakan posisi button dalam Project2 ini diletakkan dalam file main.xml. Perintah button = (Button)findViewById(R.id.button); untuk mengambil instance dari object button yang ada di file main.xml. Jika dijalankan, aplikasi jam2 tampilannya akan tampak seperti Gambar 1.4.

Gambar 1.4 Tampilan Project : Jam 2

2.3 Project 3 : Sub ActivityPada Project 3 akan dibuat program android dengan menggunakan beberapa activity yang saling terhubung dimana pada activity form utama menyediakan pilihan untuk menuju activity form 1 atau activity form 2 seperi yang terlihat di Gambar 1.5. main.xml

Gambar 1.5 Tampilan Project : Sub Activity

Setelah file layout XML utama (main.xml) selesai dibuat dilanjutkan dengan pembuatan file layout XML untuk form 1 (form1.xml) dan form 2 (form2.xml). Aktifkan Package Explorer lalu klik kanan New atau File New Other (CTRL-N), lalu pilih Android XML.

Gambar 1.6 Memberi Nama File Layout XML Baruform1.xml

form2.xml

Selanjutnya buat activity untuk form1 (Form1Activity). Aktifkan Package Explorer, lalu klik kanan New Class seperti yang ditunjukkan pada Gambar 1.7.

Gambar 1.7 Membuat Activity BaruBuat activity untuk form1 dengan melakukan extends class Form1Activity dari class Activity

Form1Activity.java

package id.ac.ub.ptiik.subactivity;

import android.app.Activity;import android.os.Bundle;import android.view.View;

public class Form1Activity extends Activity {@Overridepublic void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.form1);}

public void gotoFormUtamaClick(View v){ Intent formUtama = new Intent(this,FormUtamaActivity.class); startActivity(formUtama); }}

Hubungkan Activity formUtama dengan Activity form1 dengan cara menambahkan pada intent di AndroidManifest.xml

AndroidManifest.xml

Tambahkan method gotoForm1Click(View) di activity form utama untuk menjalankan form 1 activity.

FormUtamaActivity.java

package id.ac.ub.ptiik.subactivity;

import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;

public class FormUtamaActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } public void gotoForm1Click(View v){ Intent form1 = new Intent(this,Form1Activity.class); startActivity(form1); }}

Jalankan project dan perhatikan hasilnya. Coba buat activity untuk form 2 (Form2Activity) dan tambahkan method gotoForm2Click(View) untuk menjalankan form 2 activity pada class FormUtamaActivity serta jangan lupa untuk mendeklarasikan form 2 activity di file AndroidManifest.xml.

3. SOAL DAN LATIHANSoal1. Jelaskan apa yang dimaksud dengan Android SDK !2. Jelaskan apa yang dimaksud dengan Dalvik Virtual Machine !3. Sebutkan dan Jelaskan tentang komponen android !4. Sebutkan dan Jelaskan tentang arsitektur android !

Latihan Buatlah sebuah aplikasi sederhana dengan 3 buah activity. Activity utama yang menampilkan 2 tombol, ketika ditekan tombol 1 akan masuk ke Sub Activity 1 dan jika ditekan tombol 2 akan masuk ke Sub Activity 2.

REFERENSI

Yudhi , Wibisono .2011. Pengantar Mobile Programming dengan Android, UPI.Safaat, H. Nazruddin. 2011. ANDROID Pemrograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis Android, Penerbit Informatika.