java2 micro edition_helmi mh_1100631026

10

Click here to load reader

Upload: helmi-mahfudhatul

Post on 20-Jun-2015

414 views

Category:

Documents


0 download

DESCRIPTION

tugas aplinet

TRANSCRIPT

Page 1: Java2 micro edition_Helmi MH_1100631026

J2ME 1

JAVA2 MICRO EDITION

( J2ME )

J2ME adalah Suatu spesifikasi dan teknologi yang

fokus kepada perangkat konsumen. Perangkat ini

menghabiskan sedikit daya dari baterei karena memiliki

jumlah memori yang terbatas, layar yang kecil dan bandwith

jaringan yang rendah.Dengan perkembangbiakan perangkat

mobile konsumer dari telepon, PDA, kotak permainan ke

peralatan-peralatan rumah, Java menyediakan suatu

lingkungan yang portable untuk mengembangkan dan

menjalankan aplikasi pada perangkat ini.

Program J2ME, seperti semua program JAVA adalah

diterjemahkan oleh VM. Program-program tersebut

dicompile ke dalam bytecode dan diterjemahkan dengan

Java Virtual Machine(JVM).Ini berarti bahwa program-

program tersebut tidak berhubungan langsung dengan

perangkat. J2ME menyediakan suatu interface yang sesuai

dengan perangkat. Aplikasi-aplikasi tersebut tidak harus

dicompile ulang supaya mampu dijalankan pada mesin yang

berbeda. J2ME terletak pada configuration dan profile-

profile. Suatu configuration menggambarkan lingkungan runtime dasar dari suatu sistem J2ME.

Ia menggambarkan core library, virtual machine, fitur keamanan dan jaringan.

Pengertian J2ME

Java2 Micro Edition atau yang biasa disebut J2ME adalah 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.

Konsep program J2ME adalah sebagai berikut :

Dalam J2ME kita harus akan membuat main class turunan dari class MIDlet, main class turunan

dari MIDlet tersebut yag nantinya akan dipanggil pertama kali saat applikasi kita berjalan di HP,

dalam main class tersebut juga ada 3 method yang nantinya berfungsi sebagai trigger even dari

HP kita. Seperti:

Page 2: Java2 micro edition_Helmi MH_1100631026

J2ME 2

starApp(), method yang dipanggil apabila aplikasi kita pertama kali jalan.

pauseApp(), method yang dipanggil apabila pengguna hp mempause aplikasi kita.

destroyApp(), method yang dipanggil apabila pengguna hp menutup aplikasi kita.

Sebenernya pada dasarnya J2ME itu terdiri dari 3 bagian yaitu konfigurasi, profil dan paket-

paket opsional, berikut penjelasannya.

1. konfigurasi

yaitu bagian yang berisi JVM dan beberapa library kelas lainnya. Ada dua jenis

konfigurasi yaitu CDC (Connected Device Configuration) dan CLDC (Connected

Limited Device Configuration).

2. profile

yaitu bagian perluasan dari konfigurasi artinya selain sekumpulan kelas yang ada di

konfigurasi, terdapat juga kelas lain yang lebih spesifik yang didefinisikan di dalam

profil. Oleh karena itu profil akan membantu secara fungsional dengan menyediakan

kelas-kelas yang tidak terdapat di konfigurasi.

profile yang paling populer dari Sun adalah sering disebut MIDP (Mobile Information

Device Profile).

3. paket-paket opsional

yaitu paket tambahan yang dibutuhkan oleh aplikasi sehingga pada saat proses

deployment paket-paket tersebut perlu didistribusikan sebagai bagian dari aplikasi yang

bersangkutan. Perlu diingat bahwa paket-paket opsional tersebut bukan merupakan paket

yang dibuat oleh perusahaan alat yang digunakan.

Gambaran J2ME

Platform JAVA

Java dibuat pada tahun 1991 oleh James Gosling. Pada awalnya diberi nama Oak, dimana untuk

menghormati pohon yang ada di luar jendela Gosling. Kemudian namanya diubah ke Java karena

telah ada sebuah bahasa yang diberi nama Oak.

Motivasi sesungguhnya dari Java adalah kebutuhan akan sebuah bahasa yang bisa digunakan

pada berbagai platform yang bisa dimasukkan ke dalam berbagai produk elektronik seperti

pemanggang roti dan lemari es. Salah satu dari proyek pertama yang dikembangkan

menggunakan JAVA sebuah remote kontrol yang diberi nama Star 7. Pada saat yang sama,

World Wide Web dan Internet berkembang sangat cepat. Gosling

menyadari bahwa Java dapat digunakan untuk pemrograman Internet.

Dengan keluarnya versi 1.2, 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, Standard Edition Aplikasi Desktop

J2EE – Java 2 Platform, Enterprise Edition Aplikasi enterprise dengan fokus pada

pengembangan sisi webserver, termasuk

Page 3: Java2 micro edition_Helmi MH_1100631026

J2ME 3

servlet,JSP,EJB, dan XML J2ME – Java 2 Platform, Micro Edition Perangkat Mobile JavaCard

Smart Cards

Dibawah ini adalah contoh program J2ME Aplikasi Biodata

Menginisialisasi properti yang dibutuhkan :

import java.util.Date;

import javax.microedition.midlet.*;

import javax.microedition.lcdui.*;

public class Tugas1 extends MIDlet implements CommandListener {

private Display display; //inisialisasi variabel tampilan

private TextField tNm,tNim,tTTL,tAlmt,tNotelp;

//Inisialisasi variabel TextField (komponen turunan Item yang

menampung teks dan mengedit teks tersebut)

private Form Frmisi, FrmHasil; //Inisialisasi variabel Form

private Command Ok,Exit,Back,cmList,cmTekbok;

//Inisialisasi variabel perintah – perintah tombol

private ChoiceGroup pilprod, pilkelamin; //Inisialiasi variable

Choice Group (menampilkan daftar elemen yang dapat dipilih

di dalam Form )

private int choiceGroupIndex; //Inisialisasi variabel indeks

Choice Group

private List listMataKul; // Inisialisasi variabel list

private StringItem sNm, sNim,sKel, sTTL, sAlmt, sNotelp, sProd;

//Inisialisasi variabel Kalimat

private Ticker ticker; // Inisialisasi variabel teks berjalan

private TextBox texbok; // Inisialisasi variabel kotak teks

private Image img, img2; // Inisialisasi variabel Gambar

private Gauge gauge; //Inisialisisai variabel Gauge

private DateField date; //Inisialisasi variabel Tanggal

Penjelasan Source code di StartApp ( Memulai Aplikasi )

public Display getDisplay () {

return Display.getDisplay(this);

}

//memanggil manager aplikasi untuk memulai MIDlet

public void startApp(){

display = Display.getDisplay(this);

Page 4: Java2 micro edition_Helmi MH_1100631026

J2ME 4

//Memasukkan gambar yang terdapat di folder src projek

try {

img=Image.createImage("/Tugas1pkg/d.jpg");

} catch (Exception e){}

//menampilkan komponen pada form

Frmisi = new Form("Biodata");

//Membuat textfield untuk mengisi data - data

tNm = new TextField ("Nama: ", "", 30, TextField.ANY);

tNim = new TextField ("NIM : ", "", 30, TextField.ANY);

tTTL = new TextField ("Tempat Tanggal Lahir: ", "", 30,

TextField.ANY);

tAlmt = new TextField ("Alamat :", "", 30, TextField.ANY);

tNotelp = new TextField ("No Telepon: ", "", 30, TextField.ANY);

//membuat choice berjenis grup pop up untuk program studi

pilprod = new ChoiceGroup("Pilihan Prodi", Choice.POPUP);

//membuat pilihan - pilihan program studi yang tersedia di

choice group

pilprod.append("Teknik Komputer", null);

pilprod.append("Manajemen Informatika", null);

//membuat choice berjenis eksklusif untuk program studi

pilkelamin = new ChoiceGroup ("Jenis Kelamin",Choice.EXCLUSIVE);

//membuat pilihan - pilihan jenis kelamin yang tersedia di

choice group

pilkelamin.append("Laki - laki ",null);

pilkelamin.append("Perempuan",null);

//membuat tombol yang akan digunakan dalam form

Exit = new Command("Exit", Command.EXIT, 0);

Ok = new Command("Tampil Hasil" , Command.OK, 0);

cmList= new Command("Tampil List",Command.OK,0);

cmTekbok= new Command("Tampil TextBox",Command.OK,0);

Back = new Command("Back", Command.BACK, 0);

//Membuat tampilan gambar loading(muatan)

gauge = new Gauge("Program Berjalan", false, Gauge.INDEFINITE,

Gauge.CONTINUOUS_RUNNING);

//Membuat tanggal dan waktu

date= new DateField("Tanggal & Waktu", DateField.DATE_TIME);

Page 5: Java2 micro edition_Helmi MH_1100631026

J2ME 5

date.setDate(new Date());

// membuat teks berjalan

ticker = new Ticker("Aplikasi ini dibuat oleh Biondi ");

Frmisi.setTicker(ticker);

display.setCurrent(Frmisi);

Frmisi.append(img); // Menambahkan gambar pada form isi

Frmisi.append(date);//Menambahkan tanggal pada form isi

Frmisi.append(tNm);//Menambahkan kotak isian nama pada form isi

Frmisi.append(tTTL);//Menambahkan kotak isian tempat tanggal

lahir pada form isi

Frmisi.append(pilkelamin);//Menambahkan choicegrup pilihan jenis

kelamin

Frmisi.append(tNim);//Menambahkan kotak isian Nomor Induk

Mahasiswa

Frmisi.append(tAlmt);//Menambahkan kotak isian alamat

Frmisi.append(pilprod);//Menambahkan choicegrup pilihan program

studi

Frmisi.append(tNotelp);//Menambahkan kotak isian nomor telepon

Frmisi.append(gauge);//Menambahkan gambar loading

//Menambahkan Tombol Perintah pada form isi

Frmisi.addCommand(Exit);

Frmisi.addCommand(Ok);

Frmisi.addCommand(cmList);

Frmisi.addCommand(cmTekbok);

Frmisi.setCommandListener(this);

//membuat form hasil biodata yang telah diisi

FrmHasil = new Form("Hasil");

//Memasukkan gambar yang terdapat di folder src projek

try {

img2=Image.createImage("/Tugas1pkg/art0.jpg");

} catch (Exception e){}

//membuat string item yang digunakan untuk form hasil

sNm = new StringItem ("Nama : ", null);

sNim = new StringItem ("NIM : ", null);

sKel = new StringItem ("Jenis kelamin : ", null);

sAlmt = new StringItem ("Alamat : ", null);

sTTL = new StringItem ("Tempat Tanggal Lahir : ", null);

sNotelp = new StringItem ("No Telepon : ", null);

sProd = new StringItem ("Program Studi : ", null);

Page 6: Java2 micro edition_Helmi MH_1100631026

J2ME 6

//Membuat tampilan gambar loading(muatan)

gauge = new Gauge("Program Berjalan", false, Gauge.INDEFINITE,

Gauge.CONTINUOUS_RUNNING);

//Membuat tanggal

date= new DateField("Tanggal", DateField.DATE);

date.setDate(new Date());

//Membuat Daftar kuliah bertipe eksklusif

listMataKul = new List("Mata Kuliah", List.EXCLUSIVE);

listMataKul.append("Pemrograman Visual",null);

listMataKul.append("Kecerdasan Buatan",null);

listMataKul.append("Manajemen Proyek",null);

listMataKul.append("Mikrokontroller",null);

listMataKul.append("Konsep Switching",null);

//Menambahkan tombol perintah di list

listMataKul.addCommand(Back);

listMataKul.setCommandListener(this);

FrmHasil.append(img2);//Menambahkan gambar pada form hasil

FrmHasil.append(date);//Menambahkan tanggal pada form hasil

FrmHasil.append(sNm);//Menambahkan String item nama pada form

hasil

FrmHasil.append(sKel);//Menambahkan String item jenis kelamin

pada form hasil

FrmHasil.append(sTTL);//Menambahkan String item tempat tanggal

lahir pada from hasil

FrmHasil.append(sNim);//Menambahkan String item nim pada form

hasil

FrmHasil.append(sAlmt);//Menambahkan String item alamat pada

form hasil

FrmHasil.append(sProd);//Menambahkan Stringitem porgram studi

pada form hasil

FrmHasil.append(sNotelp);//Menambahkan String item nomor telepon

pada form hasil

FrmHasil.append(gauge);//Menambahkan gambar loading pada from

hasil

FrmHasil.setTicker(ticker);/Menambahkan teks berjalan pada form

hasil

display.setCurrent(Frmisi);

//menambahkan perintah untuk tombol back

FrmHasil.addCommand(Back);

FrmHasil.setCommandListener(this);

Page 7: Java2 micro edition_Helmi MH_1100631026

J2ME 7

//Menambahkan Teks Box

texbok = new TextBox("TextBox"," Aplikasi ini dibuat oleh Biondi

\n NIM : E3210148 ",255,TextField.ANY);

//Menambahkan tombol perintah back pada teks box

texbok.addCommand(Back);

texbok.setCommandListener(this);

}

Penjelasan tentang source code Command Action (Perintah - perintah tombol)

public void pauseApp(){

}

public void destroyApp(boolean unconditional){

}

public void commandAction(Command c, Displayable d){

//Membuat variabel string

String nama,nim,alamat,ttl,notelp,prodi,kelamin = null;

//Membuat fungsi tombol perintah Ok yang akan menampilkan isian

dari form isi

if(c == Ok){

nama = tNm.getString();

nim = tNim.getString();

alamat = tAlmt.getString();

ttl = tTTL.getString();

notelp = tNotelp.getString();

prodi = pilprod.getString(pilprod.getSelectedIndex());

kelamin = pilkelamin.getString(pilkelamin.getSelectedIndex());

sNm.setText(nama);

sNim.setText(nim);

sAlmt.setText(alamat);

sKel.setText(kelamin);

sTTL.setText(ttl);

sNotelp.setText(notelp);

sProd.setText(prodi);

display.setCurrent(FrmHasil);

Page 8: Java2 micro edition_Helmi MH_1100631026

J2ME 8

} else if(c == Exit){ //membuat fungsi tombol exit

destroyApp(true);

notifyDestroyed();

} else if(c == Back){ //Membuat fungsi tombol back untuk

kembali ke tampilan awal form isi

display.setCurrent(Frmisi);

} else if(c == cmList) {//Membuat fungsi tombol list yang akan

menampilkan list

display.setCurrent(listMataKul);

} else if (c == cmTekbok) {//Membuat fungsi tombl yang akan

menampilkan TeksBox

display.setCurrent(texbok);

}

}

}

Hasil tampilan jika source code di jalankan :

Dibawah ini tampiplan - tampilan form pengisian biodata :

Page 10: Java2 micro edition_Helmi MH_1100631026

J2ME 10

Dibawah ini tampilan teksbox :

Daftar pustaka :

guojie,jackwin li.build your stock with j2me.ibm.com

penerbit :M.Shalahuddin

http://tiar-note.blogspot.com/2011/11/apa-sih-pengertian-j2me.html

http://biondi-capten-hitsugaya.blogspot.com/2012/03/tutorial-membuat-program-java-j2me-

di.html

http://feri99.blogspot.com/2008/08/apa-itu-java-2-micro-edition-j2me.html

http://biondi-capten-hitsugaya.blogspot.com/2012/03/j2me-java-2-micro-edition-

merupakan.html

disusun oleh :

HELMI MAHFUDHATUL HARUM

1100631026 / MI. A