Anda di halaman 1dari 18

BONUS

Dasar Java Mobile


• Mengenal Java Mobile
• Mengenal MIDlet
• Mobile Grafis
• Mobile Animasi
• Latihan
• Soal
Dasar Java Mobile

Mengenal Java Mobile


Java Mobile (J2ME) atau singkatan dari Java 2 Mobile Edition meru-
pakan subset dari J2SE (Java 2 Standard Edition), yang artinya Java
API (JAPI) yang ada di J2ME sebagian diadopsi dari Java API J2SE.
Jika pada J2SE menggunakan JVM (Java Virtual Machine) sebagai In-
terprenternya, lain halnya pada J2ME yang menggunakan Kilo Virtual
Machine (KVM) sebagai Interprenternya.
Berdasarkan spesifikasi perangkat kerasnya J2ME memiliki dua macam
konfigurasi yaitu CLDC (Connected Limited Device Configuration)
dan CDC (Connected Device Configuration). Perbedaannya dapat
Anda dilihat pada Tabel 8.1 berikut ini.
CLDC (Connected Limited CDC (Connected Device
Device Configuration) Configuration)
Mengimplementasikan sebagian Mengimplementasikan seluruh
fitur dari J2SE fitur dari J2SE
Menggunakan KVM (Kilo Virtual Menggunakan CVM
Machine)
Digunakan pada Handphone, Di gunakan pada perangkat
PDA, Pager yang memiliki internet TV, Nokia Communicator
memori terbatas (160-512 KB) yang memiliki memori minimal
2 MB
Menggunakan Prosessor 16/32 Menggunakan Prosessor 32 bit
bit

Tabel 8.1 Perbedaan CLDC dan CDC


Untuk bisa membuat dan menjalankan aplikasi J2ME Anda harus
menginstall program tambahan (Add-on) Netbeans Mobility Pack
for CLDC/MIDP untuk NetBeans.
Anda bisa mendapatkan versi terbarunya di http://www.netbeans.org/
Bonus

products/index.html atau Anda install File netbeans-mobility-5_5-


win.exe di dalam folder Java\Aplikasi\ pada CD sertaan buku ini.
Saat Anda membuat dan menjalankan aplikasi J2ME di NetBeans
program tidak akan ditampilkan langsung di layar desktop, melain-
kan akan ditampilkan dalam bentuk Mobile Emulator yang memiliki
tampilan mirip Hanpdhone.

2
Dasar Java Mobile

Mengenal MIDlet
MIDlet adalah aplikasi Java yang berjalan pada paket J2ME. Jika Ap-
plet berjalan di Web Browser, maka MIDlet berjalan di aplikasi Mo-
bile.

Praktek
Pada praktek berikut ini Anda akan membuat aplikasi menampilkan
teks “Hello World” pada layar Mobile dengan menggunakan MID-
let.

1 Buat Project dengan cara klik menu File > New Project pada
menu utama atau tekan tombol Ctrl+Shift+N pada keyboard. Per-
hatikan Gambar 8.1.
1. Klik File
2. Pilih
New Project

Gambar 8.1 Membuat Project

2 Pada kotak dialog Choose Project Anda pilih kategori Mobile


dengan tipe project Mobile Application. Setelah itu klik tombol
Bonus

Next >. Perhatikan Gambar 8.2.

3 Pada kotak dialog Name and Location Anda hilangkan tanda cek
pada Create Hello MIDlet menjadi seperti .
Beri nama project dengan nama Bonus1, setelah itu klik tombol
Finish. Perhatikan Gambar 8.3.

3
Dasar Java Mobile

2. Mobile
Application
1. Pilih Mobile

3. Klik
Next >

Gambar 8.2 Memilih Project

2. Beri nama
Bonus1

1. Hilangkan
tanda cek.

3. Klik Finish

Gambar 8.3 Memberi nama Project

4 Setelah itu klik menu File > New File pada menu utama untuk
menampilkan File Wizard. Perhatikan Gambar 8.4.
1. Klik File
2. Pilih
New File
Bonus

Gambar 8.4 Klik menu File > New File

4
Dasar Java Mobile

5 Setelah muncul kotak dialog Choose File Type Anda pilih kategori
MIDP dengan tipe File MIDlet. Setelah itu klik tombol Next >.
Perhatikan Gambar 8.5.

1. Pilih MIDP 2. Pilih


MIDlet

3. Klik
Next >

Gambar 8.5 Menentukan tipe File

6 Beri nama MIDletBonus1 pada kotak dialog Name & Location


setelah itu klik tombol Finish. Perhatikan Gambar 8.6.

1. Beri nama

3. Klik
Finish

Gambar 8.6 Beri nama MIDletBonus1

7 Ketikkan deklarasi berikut ini di bagian bawah baris perintah pub-


Bonus

lic class MidletBonus1 extends MIDlet {. Perhatikan Gambar


8.7.

Ketik di sini

Gambar 8.7 Mengetikkan deklarasi variabel

5
Dasar Java Mobile

1
private Display display;
2
TextBox tampil = null;

Keterangan :
Baris 1 Variabel display yang mewakili komponen
Display yang berfungsi menampilkan ob-
jek pada layar.
Baris 2 Komponen Texbox dengan nama tampil
yang memiliki nilai kosong (null).

8 Ketikkan perintah berikut ini di dalam blok kode Method public


void startApp(). Perhatikan Gambar 8.8.

Ketik di sini

Gambar 8.8 Mengetikkan kode perintah

1
display = Display.getDisplay(this);
2 tampil = new TextBox(“MIDlet Pertamaku”, “Hello
3
World !!!”, 20, 0);
4 display.setCurrent(tampil );

Keterangan :
Baris 1 Eksekusi variabel display.
Baris 2-3 Memberi nilai tipe data String pada varia-
bel tampil.
Baris 4 Menampilkan nilai tampil ke display.
Bonus

9 Compile program dengan menekan tombol F11 pada keyboard,


kemudian jalankan dengan menekan tombol F6 untuk menjalank-
an Mobile Emulator. Perhatikan Gambar 8.9.

6
Dasar Java Mobile

Gambar 8.9 Mobile Emulator

10 Untuk menjalankan MIDletBonus1, Anda klik dengan mouse


tombol di bawah tulisan Launch yang ada pada layar Emulator
atau tekan tombol Enter pada keyboard. Perhatikan Gambar
8.10.
Bonus

Klik di sini
Gambar 8.9 Mobile Emulator

Gambar 8.10 Menjalankan MIDletBonus1

7
Dasar Java Mobile

11 Tampilan MIDletBonus1 akan terlihat seperti pada Gambar 8.11


di bawah ini.

Gambar 8.11 Tampilan program MIDletBonus1

Mobile Grafis
Anda juga dapat membuat aplikasi grafis pada paket J2ME,
sama seperti pada paket J2SE.

Praktek
Pada praktek berikut ini Anda akan membuat sebuah objek grafis
sederhana.
Bonus

1 Buat Project dengan nama Bonus2 dan tambahkan MIDlet dengan


nama MIDletBonus2.

2 Hapus perintah pada bagian deklarasi komponen, kemudian ketik-


kan deklarasi komponen di bawah ini. Perhatikan Gambar 8.12.

8
Dasar Java Mobile

Hapus
bagian ini

Gambar 8.12 Menghapus perintah

1
import javax.microedition.lcdui.Canvas;
2
import javax.microedition.lcdui.Display;
3
import javax.microedition.lcdui.Displayable;
4
import javax.microedition.lcdui.Graphics;
5
import javax.microedition.midlet.MIDlet;

3 Hapus perintah di bawah blok kode public class MidletBonus2


extends MIDlet { kemudian ketikkan perintah seperti di bawah ini.
Perhatikan Gambar 8.13.
Bonus

Hapus
bagian ini

Gambar 8.13 Menghapus perintah

9
Dasar Java Mobile

1 private Display layar;


2 private Tampil grafis;
3 public MidletBonus2(){
4 layar = Display.getDisplay(this);
5 grafis = new Tampil(this);
6
}
7 public void startApp() {
8 layar.setCurrent(grafis);
9 }
10 public void pauseApp() {
11 }
12 public void destroyApp(boolean unconditional) {
13 }
14 public void exitMIDlet() {
15 destroyApp(true);
16 notifyDestroyed();
17
}
18
}
19
class Tampil extends Canvas {
20
private MidletBonus2 objek_grafis;
21
public Tampil(MidletBonus2 filledRectangleExample)
22
{
23 this.objek_grafis = objek_grafis;
24
}
25
public void paint(Graphics objek) {
26 objek.setColor(255, 255, 255);
27 objek.setColor(0, 255, 0);
28 objek.fillRoundRect(100, 100, 50, 100, 200, 50);
29
}
30
}

Keterangan :
Baris 1-2 Deklarasi variabel.
Bonus

Baris 3-6 Constructor MIDletBonus2.


Baris 7-12 Default Method J2ME.
Baris 18 Akhir blok kode Class MIDletBonus2.
Baris 19-30 Class Tampil yang menampilkan objek
grafis dari objek segi empat.

10
Dasar Java Mobile

4 Compile program dengan menekan tombol F11 pada keyboard,


kemudian jalankan dengan menekan tombol F6 untuk menjalank-
an Mobile Emulator.

5 Untuk melihat tampilan program, tekan tombol Enter pada


keyboard. Perhatikan Gambar 8.14.

Gambar 8.14 Tampilan program Bonus2

Mobile Animasi
Selain aplikasi grafis, Anda juga dapat membuat aplikasi ani-
masi pada paket J2ME.

Praktek
Pada praktek ini Anda akan membuat aplikasi animasi sederhana.
Bonus

1 Buat Project dengan nama Bonus3 dan tambahkan MIDlet dengan


nama MIDletBonus3.

2 Hapus perintah di bawah blok kode public class MidletBonus3


extends MIDlet { kemudian ketikkan perintah seperti di bawah ini.
Perhatikan Gambar 8.15.

11
Dasar Java Mobile

Hapus
bagian ini

Gambar 8.15 Menghapus perintah

1 public void startApp() {


2 Animasi animasi = new Animasi();
3 animasi.start();
4 Display.getDisplay(this).setCurrent(animasi);
5
}
6
public void pauseApp() {
7
}
8
public void destroyApp(boolean unconditional) {}
9 }
10
class Animasi extends Canvas implements Runnable {
11
private boolean mulai;
12
private int posisi;
13
private int border;
14
private int jalan;
15
public Animasi() {
16 posisi = 0;
17 border = 20;
18 jalan = 75;
19
}
20
public void start() {
21 mulai = true;
22 Thread t = new Thread(this);
Bonus

23 t.start();
24
}
25
public void stop() {
26 mulai = false;
27
}
28
public void paint(Graphics gambar) {
29 int width = getWidth();
30 int height = getHeight();

12
Dasar Java Mobile

31 gambar.setColor(100,100,50);
32 gambar.fillRect(0, 0, width - 1, height - 1);
33 int x = border;
34 int y = border;
35 int w = width - border * 2;
36 int h = height - border * 2;
37 for (int i = 0; i < 8; i++) {
38 gambar.setColor(115,68,(8 - i) * 32 - 16);
39 gambar.fillArc(x,y,w,h,(posisi + i)*(10*10), 10);
40 }
41
}
42
public void run() {
43 while (mulai) {
44 posisi = (posisi + 1) % 360;
45 repaint();
46 try { Thread.sleep(jalan); }
47 catch (InterruptedException ie) {}
48 }
49
}
50
}

Keterangan :
Baris 1-5 Menampilkan class Animasi pada saat
MIDletBonus3 dieksekusi.
Baris 4-9 Default Method J2ME.
Baris 10 Class Animasi berisi perintah menggam-
bar objek animasi.
Baris 11-14 Deklarasi variabel class animasi.
Baris 15-19 Constructor animasi.
Baris 20-24 Method start() yang menjalankan animasi.
Bonus

Baris 25-27 Method stop() yang menghentikan anima-


si.
Baris 28-41 Method paint() yang menggambar objek
animasi pada layar.
Baris 42-50 Method run() yang menampilkan animasi
pada saat program dijalankan.

13
Dasar Java Mobile

3 Compile program dengan menekan tombol F11 pada keyboard,


kemudian jalankan dengan menekan tombol F6 untuk menjalank-
an Mobile Emulator.

4 Untuk melihat tampilan program, tekan tombol Enter pada


keyboard. Perhatikan Gambar 8.16.

Gambar 8.16 Tampilan program Bonus3

Latihan
Pada latihan ini Anda akan membuat animasi yang mirip den-
gan praktek pada program Bonus3. Anda akan membuat dua
buah objek animasi yang bergerak secara bersamaan tapi
dengan tempo yang berbeda.

1 Buat Project dengan nama BonusLatihan dan tambahkan MIDlet


Bonus

dengan nama MIDletBonusLatihan.

2 Hapus perintah di bawah blok kode public class MidletBonus-


Latihan extends MIDlet { kemudian ketikkan perintah seperti di
bawah ini. Perhatikan Gambar 8.17.

14
Dasar Java Mobile

Hapus
bagian ini

Gambar 8.17 Menghapus perintah

1 public void startApp() {


2 Animasi animasi = new Animasi();
3 animasi.start();
4 Display.getDisplay(this).setCurrent(animasi);
5
}
6
public void pauseApp() {
7
}
8
public void destroyApp(boolean unconditional) {}
9 }
10
class Animasi extends Canvas implements Runnable {
11
private boolean mulai;
12
private int posisi;
13
private int border;
14
private int jalan;
15
public Animasi() {
16 posisi = 0;
17 border = 75;
18 jalan = 50;
19
}
20
public void start() {
21 mulai = true;
22 Thread t = new Thread(this);
23 t.start();
24
}
Bonus

25
public void stop() {
26 mulai = false;
27
}
28
public void paint(Graphics gambar) {
29 int width = getWidth();
30 int height = getHeight();
31 gambar.setColor(0,0,0);
32 gambar.fillRect(0, 0, width - 1, height - 1);

15
Dasar Java Mobile

33 int x = border;
34 int y = border;
35 int w = width - border * 2;
36 int h = height - border * 2;
37 for (int i = 0; i < 8; i++) {
38 gambar.setColor(32,45,(8 - i) * 32 - 16);
39 gambar.fillArc(x,y,w,h,(posisi + i)*(7*2), 10);
40 gambar.fillArc(x,y,w,h,(posisi+180)%360+i*10, 10);
41 }
42
}
43
public void run() {
44 while (mulai) {
45 posisi = (posisi + 1) % 360;
46 repaint();
47 try { Thread.sleep(jalan); }
48 catch (InterruptedException ie) {}
49 }
50
}
51
}

Keterangan :
Baris 1-5 Menampilkan class Animasi pada saat
MIDletBonus3 dieksekusi.
Baris 4-9 Default Method J2ME.
Baris 10 Class Animasi berisi perintah menggam-
bar objek animasi.
Baris 11-14 Deklarasi variabel class animasi.
Baris 15-19 Constructor animasi.
Baris 20-24 Method start() yang menjalankan animasi.
Baris 25-27 Method stop() yang menghentikan anima-
si.
Bonus

Baris 28-39 Method paint() yang menggambar objek


animasi pada layar.
Baris 40 Menggambar objek animasi ke-2.
Baris 43-51 Method run() yang menampilkan animasi
pada saat program dijalankan.

16
Dasar Java Mobile

3 Compile program dengan menekan tombol F11 pada keyboard,


kemudian jalankan dengan menekan tombol F6 untuk menjalank-
an Mobile Emulator.

4 Untuk melihat tampilan program, tekan tombol Enter pada


keyboard. Perhatikan Gambar 8.18.

Gambar 8.18 Tampilan program BonusLatihan

Soal
Untuk soal, coba Anda modifikasi program BonusLatihan dengan
mengubah warna latar, warna objek, tempo animasi, dan arah putaran
Bonus

objek animasi menjadi searah dengan jarum jam.

Ketentuan Soal
Untuk tampilan soal, klik ganda file Bonus_Soal.jar yang ada di dalam
folder Java\Bonus\ atau lihat Gambar 8.19.

17
Dasar Java Mobile

Gambar 8.19 Tampilan program Bonus_Soal


Bonus

18