1100631021 j2 me

8

Click here to load reader

Transcript of 1100631021 j2 me

Page 1: 1100631021 j2 me

J2ME adalah lingkungan pengembangan yang didesain untuk

meletakkan perangkat lunak Java pada barang elektonik beserta

perangkat pendukungnya. J2ME membawa Java kedunia informasi,

komunikasi, dan perangkat komputasi selain perangkat komputer desktop

yang biasanya lebih kecil dibandingkan perangkat komputer desktop.

J2ME biasa digunakan pada ponsel, peger, PDA dan sejenisnya.(M.

Salahuddin, Rosa A.S, 2006:5).

Menurut (Budi Raharjo 2007:3) J2ME merupakana kombinasi yang

terbentuk antara sekumpulan interface Java yang sering disebut Java API

(application Programming Interface) dengan JVM (Java Virtual Machine)

yang didisain khusus untuk alat, yaitu JVM dengan ruang yang terbatas.

Kombinasi tersebut kemudian digunakan untuk melakukan pembuatan

aplikasi-aplikasi yang dapat berjalan diatas alat (dalam hal ini mobile

device).

Java2 Micro Edition atau J2ME merupakan salah satu teknologi dari Bahasa Pemograman Java

yang memungkinkan pembuatan aplikasi-aplikasi Java bisa berjalan pada perangkat mobile/handpone

atau PDA (Personal Digital Asistent) yang karakteristiknya berbeda dengan PC (personal computer),

seperti kecilnya jumlah memory pada handphone dan PDA, serta keterbatasan interface dari perangkat

tersebut. J2ME juga merupakan lingkungan pengembangan yang didesain untuk meletakkan perangkat

lunak JAVA pada barang elektronik berserta perangkat pendukungnya. Pada J2ME, jika perangkat lunak

berfungsi dengan baik pada sebuah perangkat maka belum tentu juga berfungsi baik pada perangkat

yang lain. J2ME membawa Java ke dunia informasi, komunikasi, dan perangkat komputasi yang lebih

kecil dibandingkan dengan computer desktop. J2ME biasa digunakan pada telepon selular, pager, PDA,

dan sejenisnya.

Teknologi J2ME juga memiliki beberapa keterbatasan jika diaplikasikan pada ponsel. J2ME sangat

bergantung pada device yang digunakan, bisa dari merk ponsel, maupun kemampuan ponsel, dan

dukungan terhadap teknologi J2ME. Misalnya, jika sebuah ponsel tidak memiliki kamera maka jelas J2ME

pada ponsel tersebut tidak dapat mengakses kamera.

Beberapa keterbatasan teknologi J2ME jika diaplikasikan pada ponsel antara lain:

J2ME sangat tergantung pada perangkat (device) yang digunakan, bisa dari segi merek ponsel,

maupun kemampuan ponsel dan dukungan terhadap J2ME.

Ukuran aplikasi, memory ponsel yang terbatas.

Page 2: 1100631021 j2 me

Sistem kemanan yang dibuat oleh ponsel yang tidak mengijinkan aplikasi J2ME menulis pada

ponsel tersebut.

Salah satu teknologi yang dikembangkan untuk pemrograman aplikasi-aplikasi untuk perangkat

mobile adalah WAP (Wireless Aplication Protocol), namun WAP hanya salah satu dari beberapa teknologi

nirkabel dan dalam perkembangannya, WAP kurang suskes di pasaran.

Berawal dari hal tersebut, perusahaan Sun Microsistem mencoba untuk mengembangkan

teknologi Java yang dapat dijalankan untuk pemrograman wireless. J2ME merupakan salah satu teknologi

Java yang dikembangkan untuk pembuatan aplikasi-aplikasi perangkat wireless. Seperti teknologi Java

yang lain, J2ME terdiri atas beberapa komponen. Antara lain yaitu :

a. Java Virtual Machine (JVM) =>> Komponen ini digunakan untuk menjalankan program-program

Java pada emulator.

b. Java API (Aplication Programing Interface) =>> Koponen ini merupakan kupulan library yang

digunakan untuk menjalankan dan mengembangkan program Java pada handphone.

c. Tools =>> Komponen ini digunakan untuk pengembangan apliaksi Java, semacam emulator Java

Phone.

Connected Limeted Device Configuration (CLDC)

CLDC atau Connected Limited Device Cofiguration adalah perangkat dasar dari J2ME,

spesifikasi dasar yang berupa library atau API yang diimplementasikan pada J2ME, seperti yang

digunakan pada telepon selular, pager, dan PDA. Perangkat tsb dibatasi dengan keterbatasan

memory, sumber daya, dan kemampuan memproses. Spesifikasi CLDC pada J2ME adalah

spesifikasi minimal pada package, class, dan sebagian fungsi Java Virtual Machine yang dikurangi

agar dpat diimplementasikan dengan keterbatasan sumber daya pada alat tersebut, JVM yang

digunakan adalah KVM (Kilobyte Virtual Machine).

Spesifikasi CLDC memerlukan semua class untuk melewati proses verifikasi dua

tingkat. Verifikasi pertama dilaksanakan diluar perangkat sebelum instalasi pada perangkat.

Verifikasi kedua terjadi pada perangkat selama runtime dan dilaksanakan oleh KVM.

Page 3: 1100631021 j2 me

Mobile Information Device Profile (MIDP)

MIDP atau Mobile Information Device Profile adalah spesifikasi untuk sebuah profil J2ME.

MIDP memilik lapisan diatas CLDC, API tambahan untuk daur hidup aplikasi, antar muka, jaringan,

dan pemyimpanan persisten. Pada saat ini terdapat MIDP 1.0 dan MIDP 2.0. Fitur tambahan pada

MIDP 2.0 dibandingkan MIDP 1.0 adalah API untuk multimedia. Pada MIDP 2.0 terdapat

dukunagan memainkan tone, tone sequence, dan file WAV walaupun tanpa adanya Mobile Media

API (MMAPI).

MIDlet

MIDlet adalah aplikasi yang ditulis untuk MIDP. Aplikasi MIDlet adalah bagian dari class

javax.microedition.midlet.MIDlet yang didefinisikan pada MIDP. MIDlet berupa sebuah class

abstrak yang merupakan subclass dari bentuk dasar aplikasi sehingga antarmuka antara aplikasi

J2ME dan aplikasi manajemen pada perangkat bisa terbentuk.

Daur Hidup MIDlet

MIDlet terdiri dari beberapa method yang harus ada, yaitu contructor(), protected void

startApp() throws MIDletStateChangeException, protected void pauseApp(), protected void

destroyApp (Boolean unconditional) throwsMIDletStateChangeException.

Ketika MIDlet dijalankan maka akan diinisialisasi dengan kondisi pause dan dijalankan

pauseApp(), kondisi berikutnya adalah fungsi MIDlet dijalankan, yaitu pada startApp(). Metode

yang ada tersebut diimplementasikan sebagai protected, hal ini dimaksudkan agar MIDlet lain

tidak dapat memanggil method tersebut. Pada saat pemakai keluar dari MIDlet, maka method

destroyApp() akan dijalankan sebelum MIDlet benar-benar tidak berjalan lagi. Method

notifyDestroyed() akan dipanggil sebelum MIDlet benar-benar tidak berjalan lagi, DestroyApp()

akan memanggil notifyDestroyed(), dan notifyDestroyed() akan memberi tahu platform untuk

menterminasi MIDlet dan membersihkan semua sumber daya yang mengacu pada MIDlet.

J2ME Wireless Toolkit

J2ME Wireless Toolkit adalah perkakas yang menyediakan lingkungan emulator,

dokumentasi beserta contoh-contoh aplikasi JAVA untuk perangkat kecil. J2ME WTK berbasiskan

pada CLDC dan MIDP. J2ME WTK adalah program yang meniru kerja ponsel yang mendukung

MIDP atau yang disebut emulator. Oleh karena itu, belum tentu MIDlet yang berjalan di emulator

Page 4: 1100631021 j2 me

juga berjalan pada ponsel yang sebenarnya, karena juga bergantung pada kemampuan dan

kapasitas ponsel yang digunakan.

J2ME adalah bagian dari J2SE, karena itu tidak semua library yang ada pada J2SE dapat digunakan

pada J2ME, tetapi J2ME mempunyai beberapa library khusus yang tidak J2SE.

Java Platform Micro Edition atau Java ME, adalah salah satu platform java yang dirancang untuk

aplikasi mobile dan sistem tertanam ( lebih enak nyebutnya embedded system). Level Java ME digunakan

untuk merancang perangkat lunak handphone dan PDA. Java ME ini lebih dikenal juga dengan nama Java

2 Platform, Micro Edition atau J2ME. Java ME dirancang oleh Sun Microsystem dan sekarang dimiliki oleh

perusahaan Oracle Corporation.

Java Platform, Enterprise Edition atau Java EE merupakan standar untuk mengembangkan aplikasi

skala besar / enterprise. J2EE banyak digunakan sebagai platform untuk pemrograman di sisi server.

Java Platform Standard Edition atau J2SE banyak digunakan sebagai platform untuk pemrograman

dalam bahasa Java. Platform ini digunakan untuk mendeploy sebuah aplikasi. Java SE terdiri dari virtual

machine yang digunakan untuk menjalankan program java bersama-sama dengan library atau paket.

Perbedaan dengan J2EE adalah bahwa J2SE menambahkan library yang berfungsi untuk

mendeploy program java agar berjalan pada aplikasi server.

Dengan keluarnya versi platform Java telah dipilah-pilah menjadi beberapa edisi :

The Standard Edition(J2SE), Enterprise Edition(J2EE), Mobile Edition(J2ME), dan JavaCard API.

J2SE – Java 2 Platform, Standart Edition

Aplikasi Dekstop

J2EE – Java 2 Platform, Enterprise Edition Aplikasi enterprise dengan focus pada pengembangan sisi webserver, termasuk servlet, JSP, dan XML

J2ME – Java 2 Platform, Micro Edition Perangkat Mobile

JavaCard Smart Cards

Page 5: 1100631021 j2 me

Berikut merupakan contoh program sederhana yang menggunakan J2ME.

FORM DAN TICKER.

Apabila sedang menyaksikan tayangan pada televisi akan sering terlihat berita pada bagian bawah layar yang berupa tulisan berjalan. Atau pada acara yang berhubungan dengan bursa efek akan bisa dilihat juga berupa tulisan berjalan yang memberikan informasi mengenai keadaan saham pada saat itu. Untuk membuat “tayangan” seperti itu pada layar ponsel dapat digunakan class Ticker.

Class Ticker tampak seperti animasi teks berjalan terus menerus dari kanan ke kiri. Untuk menampilkan obyek Ticker yang telah dibuat, kita perlu memanggil method setTicker() yang didefinisikan pada class Displayable. Ini artinya, method tersebut dapat kita panggil dari obyek turunan dari kelas Screen maupun Canvas.

Pada modul ini akan mengeksplorasi ticker. Disini akan membuat obyek Ticker dan mengkaitkannya dengan obyek Form.

Berikut source code yang perlu kita ketikkan

import javax.microedition.midlet.*;

import javax.microedition.lcdui.*;

public class MIDTicker extends MIDlet implements CommandListener {

private Form form;

private Display display;

private Ticker ticker;

private Command cmdKeluar;

public MIDTicker() {

cmdKeluar = new Command("Keluar", Command.EXIT, 1);

ticker = new Ticker("Saham TELKOM naik 10 point");

form = new Form("Ticker");

form.setTicker(ticker);

form.addCommand(cmdKeluar);

form.setCommandListener(this);

}

public void startApp() {

display = Display.getDisplay(this);

display.setCurrent(form);

}

public void pauseApp() {

}

public void destroyApp(boolean unconditional) {

}

public void commandAction(Command c, Displayable d) {

if (c == cmdKeluar) {

destroyApp(false);

notifyDestroyed();

}

}

}

import javax.microedition.midlet.*;

import javax.microedition.lcdui.*;

public class MIDTicker extends MIDlet implements CommandListener {

private Form form;

private Display display;

private Ticker ticker;

private Command cmdKeluar;

Page 6: 1100631021 j2 me

Berikut keterangan kode program di atas:

Untuk membuat objek ticker digunakan baris berikut :

ticker = new Ticker("Ini text berjalan yang akan ditampilan pada layar ");

Sedangkan untuk menambahkan objek ticker pada form digunakan method setTicker(objekTicker), seperti di bawah ini :

form.setTicker(ticker);

Berbeda pada ponsel lainnya, pada Siemens, teks dari objek ticker menempati baris sama dengan title dari form. Selain itu, teks pada objek ticker hanya berjalan setelah layar saja.

SETTING TEKS PADA TICKER

Pada class Ticker terdapat dua method yaitu getString() dan setString(String str). Berikut

adalah contoh untuk aplikasi yang memberikan fasilitas bagi user untuk mengubah teks yang

ditampilkan oleh objek ticker. Berikut adalah contoh dari aplikasi tersebut. Aplikasi ini dapat

memodifikasi aplikasi ticker sebelumnya.

Berikut source code yang perlu diketikkan.

Page 7: 1100631021 j2 me

Aplikasi ini merupakan hasil modifikasi dari MIDTickerLanjut.java. Objek yang ditambahkan adalah objek textField yang akan digunakan oleh user untuk memasukkan teks yang akan digunakan oleh objek ticker. Pada konstruktor hanya dilakukan pembuatan objek ticker dan belum ditambahkan pada objek form. Setelah “tombol” Ticker ditekan baru objek ticker ditambahkan pada form dengan baris seperti berikut ini:

if (c == cmdTicker) { form.setTicker(ticker); ticker.setString(textField.getString()); }

Untuk menampilkan teks yang diisikan user pada textField digunakan baris berikut:

ticker.setString(textField.getString());

import javax.microedition.midlet.*;

import javax.microedition.lcdui.*;

public class MIDTickerLanjut extends MIDlet implements CommandListener {

private Form form;

private Display display;

private Ticker ticker;

private Command cmdKeluar;

private Command cmdTicker;

private TextField textField;

public MIDTickerLanjut() {

cmdKeluar = new Command("Keluar", Command.EXIT, 1);

cmdTicker = new Command("Set Ticker", Command.SCREEN, 2);

textField = new TextField("Teks : ", "", 50, TextField.ANY);

ticker = new Ticker("");

form = new Form("Ticker");

form.append(textField);

form.addCommand(cmdKeluar);

form.addCommand(cmdTicker);

form.setCommandListener(this);

}

public void startApp() {

display = Display.getDisplay(this);

display.setCurrent(form);

}

public void pauseApp() {

}

public void destroyApp(boolean unconditional) {

}

public void commandAction(Command c, Displayable d) {

if (c == cmdKeluar) {

destroyApp(false);

notifyDestroyed();

}

if (c == cmdTicker) {

form.setTicker(ticker);

ticker.setString(textField.getString());

}

}

}

Page 8: 1100631021 j2 me

Daftar Pustaka:

Jeni-j2me-bab01-pengembangan-aplikasi-mobile.pdf

http://wartawarga.gunadarma.ac.id/2010/02/pengertian-j2me/

http://infoini.com/2011/pengertian-j2me-java-2-micro-edition.html

http://www.andisun.com/tutorials/j2me-programming/j2me-form-dan-ticker

http://www.en.wikipedia.org.

Diresum oleh :

Lailatul Mutmainnah©

1100631021 MI/A