P. 1
Aplikasi Nirkabel - J2ME - Pertemuan 2

Aplikasi Nirkabel - J2ME - Pertemuan 2

|Views: 96|Likes:
Published by Himawan
Slide materi power point mata kuliah aplikasi nirkabel dengan pembahasan pemrograman aplikasi mobile dengan J2ME
Slide materi power point mata kuliah aplikasi nirkabel dengan pembahasan pemrograman aplikasi mobile dengan J2ME

More info:

Categories:Types, Presentations
Published by: Himawan on Jul 02, 2013
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PPT, PDF, TXT or read online from Scribd
See more
See less

11/01/2013

pdf

text

original

APLIKASI NIRKABEL J2ME

PERTEMUAN 2

HIMAWAN

Materi yang akan di bahas pada pertemuan ini adalah :

1. 2. 3. 4.

Siklus Midlet Command Listener Low Level User Interface High Level User Interface

Siklus Hidup Midlet

Aplikasi Midlet di atur dan di kelola oleh Application Management Systems (AMS) yang ada dalam setiap perangkat.

AMS melakukan proses start, pause dan berhenti dari aplikasi MIDP dengan memanggil method siklus hidup dari class-class utama Midlet.

Setiap anda membuat class MIDlet, maka anda harus mengimport library dari class javax.microedition.midlet.MIDlet dan melakukan customize dari setiap method-method siklus MIDlet yang ada.

Berikut ini adalah bentuk visualisasi dari siklus MIDlet dalam pemrograman J2ME :

• Manajemen pengelolaan siklus MIDlet yang di lakukan oleh AMS : .

fungsi yang akan di panggil oleh MIDlet dan akan menanyakan pada AMS untuk menghentikan proses MIDlet itu sendiri. yang akan memberikan pemberitahuan pada AMS bahwa MIDlet akan kembali dari keadaan pause akan kembali aktif lagi. .  resumeRequest(). fungsi yang akan di panggil oleh MIDlet.  destroyApp().  pauseApp(). fungsi yang akan di panggil oleh AMS ketika MIDlet akan di hentikan atau di matikan.  notifyDestroyed(). fungsi yang akan di panggil oleh AMS ketika MIDlet berusaha untuk di jalankan kembali dari keadaan pause. fungsi yang akan di panggil oleh AMS ketika MIDlet dalam keadaan pause.• Method-method yang ada dalam siklus hidup MIDlet :  startApp().

di mulai dari ketika program di panggil maka status MIDlet akan berada di keadaan aktif dengan memanggil method startApp().• Siklus dari sebuah program MIDlet akan selalu sama. . maka proses menampilkan teks “MIDlet pertama saya di J2ME” berada dalam keadaan startApp(). yaitu : startApp(). • Perlu di ingat bahwa setiap program MIDlet yang anda buat harus selalu memiliki 3 keadaan ini. pauseApp() dan destroyApp(). • Jika anda masih mengingat program MIDlet sederhana yang anda buat pada pertemuan sebelumnya.

• Struktur dari pemrograman J2ME dalam membuat MIDlet : .

. • Contohnya : user dapat memberikan inputan dengan menggunakan menumenu tertentu atau memberikan inputan pada elemen user interface seperti button atau link. • Kegunaan dari command listener ini tentu saja untuk membawa user ke bagian lain dari sebuah aplikasi sesuai dengan button atau command yang di berikan melalui inputan user.Command Listener / Event Handling • Command atau event handling dalam aplikasi MIDlet di gunakan untuk menangani interaksi user dengan tampilan antar muka program.

setCurrent(text). private Display tampil.midlet.2). } . tampil.getDisplay(this).256. J2ME".• Berikut ini adalah contoh program J2ME sederhana dengan menggunakan button command listener : import javax.addCommand(cmdKeluar). text.0).lcdui. public command() { tampil = Display."Hello World.*.microedition. import javax.setCommandListener(this).*. public class command extends MIDlet implements CommandListener{ private Command cmdKeluar. } public void startApp() { TextBox text = new TextBox("Hello".SCREEN. Command.microedition. text. cmdKeluar = new Command("Keluar".

notifyDestroyed().• Lanjutan program command listener – bagian 2 : public void pauseApp() { } public void destroyApp(boolean unconditional) { } public void commandAction(Command cmd.Displayable disp) { if(cmd == cmdKeluar) { destroyApp(false). } } } .

• Tampilan output program command listener : .

di harapkan penggunaan program menjadi lebih mudah untuk di gunakan dan di mengerti oleh user yang menggunakan. Bentuk pilihan seperti check box dan radio button. List. • Dengan menggunakan user interface. Terlebih user interface yang di berikan merupakan tampilan dalam bentuk visualisasi GUI. Alert Message. .Mengenal dan mempelajari User Interface dalam MIDP • User Interface atau dalam bahasa indonesia di kenal dengan nama antar muka di gunakan untuk berkomunikasi dengan user yang menggunakan program. contohnya : Menu. Form. TextBox. • Ada banyak komponen-komponen dari user interface yang di sediakan dalam pemrograman MIDlet. dll.

• Sementara class yang kita gunakan adalah class Display yang akan di gunakan untuk menampilkan elemen-elemen user interface ke dalam layar perangkat. .lcdui.lcdui dan javax.Membuat MIDlet – MIDlet User Interface • Struktur user interface dalam MIDP terbagi menjadi 2 kategori.microedition.game. yaitu : Low- Level User Interface dan High-Level User Interface. • Package atau library yang kita gunakan untuk membuat komponen user interface dalam pemrograman MIDP adalah : javax.microedition.

• Struktur dari Class User Interface MIDP : .

Textbox. merupakan object yang di gunakan untuk membuat user interface tingkat rendah (basic atau standar) yang di gunakan oleh aplikasi untuk menghasilkan grafik dan penanganan input.• Jika anda lihat pada gambar struktur dari class user interface sebelumnya. merupakan object yang di gunakan untuk membuat user interface tingkat tinggi dan di gunakan sebagai pelengkap tambahan dari komponen-komponen user interface. . maka anda akan melihat bahwa ada 2 tipe dari sub class Displayable yang dapat kita gunakan. List. yaitu :  Class Screen.  Class Canvas. Form. contoh : class Alert.

• Contoh dari penggunaan penanganan input event low-level adalah game board. • Dengan menggunakan API low-level user interface. penanganan event primitive (dasar) seperti penanganan key-input dan key-releases. objek berbentuk grafik. • Kita mulai pembahasan user interface dalam MIDP dengan membahas menggunakan low-level user interface. .• Mengapa penggunaan user interface menjadi sangat penting ?. • Penggunaan API low-level user interface untuk class Canvas di desain untuk aplikasi yang membutuhkan ketelitian penempatan dan kendali dari sebuah element grafik yang membutuhkan akses kepada penanganan input event low-level. maka sebuah aplikasi dapat mengontrol apa yang akan di gambar pada layar (screen). Tanpa adanya user interface bagaimana kita bisa menggunakan perangkat yang ada bukan ?.

yang memiliki sub-class dan elemen-elemen berikut :     List TextBox Alert Form . maka fleksibilitas dan sifat portable menjadi sangat penting.• Berikutnya adalah pembahasan API untuk high-level user interface. • High-level user interface di hasilkan dari class Screen. penggunaan dari high-level user interface di desain untuk aplikasi bisnis yang di mana perangkat komponen pada klien menjalankan informasi pada perangkat. Untuk menghasilkan sebuah aplikasi yang portable maka pemanfaatan dari high-level user interface dan menghasilkan peminimalan dari kontrol sebuah aplikasi. • Untuk aplikasi sejenis ini.

karena setiap vendor memiliki spesifikasi yang berbeda untuk setiap perangkat yang mereka buat. • Karakterisitik dari elemen Textbox adalah memiliki ukuran maksimum. label dan format inputan yang di berikan user. . nomor telepon. • Untuk ukuran maksimum inputan yang di berikan oleh user sangat bergantung dari perangkat yang di gunakan oleh masing-masing user. alamat email atau password. • Contoh penggunaan dari elemen TextBox adalah untuk menginput nama.Penggunaan TextBox • Textbox merupakan komponen atau elemen dari MIDP user interface yang di gunakan untuk menampung inputan dari user baik itu berupa teks maupun inputan numerik (angka).

    title di gunakan untuk memberikan judul pada layar. variabel text di gunakan untuk initial setting default inputan. . ukuranmaks di gunakan untuk ukuran maksimum dari textbox. maka anda harus memberikan parameter yang spesifik dalam konstruktor TextBox berikut ini : public TextBox(String title. constraint di gunakan untuk membatasi inputan yang di berikan oleh user. int ukuranmaks. int constraint).• Berikut adalah contoh pengimplementasian penggunaan elemen TextBox dalam perangkat yang ada : • Untuk dapat membuat elemen textbox. String text.

teks = new TextBox(“TextBox".ANY).microedition.setCurrent(teks). public textbox() { layar = Display.30. TextField. import javax.lcdui.• Contoh program dengan menggunakan elemen textbox : import javax. public class textbox extends MIDlet { private Display layar.*.microedition.*. } public void pauseApp() { } public void destroyApp(boolean unconditional) { } } ."Menggunakan elemen TextBox".midlet. } public void startApp() { layar.getDisplay(this). private TextBox teks.

• Tampilan output program membuat elemen textbox anda : .

microedition.TextBox.MIDlet.lcdui. javax. public class textbox2 extends MIDlet { //Ukuran maksimum dari teks yang ada dalam textbox private static final int MAX_TEXT_SIZE = 64. javax. //membuat objek midlet display protected Display display. javax.Ticker.lcdui.• Contoh program lain dengan menggunakan elemen textbox : (bagian 1) import import import import import javax. //penanda di mulainya aplikasi protected boolean started.lcdui.microedition.microedition. //Mendeklarasikan class textbox protected TextBox textBox.midlet. javax.Display.lcdui.microedition. .microedition.TextField.

started = true.ANY).setTicker(ticker).setCurrent(textBox). //Membuat dan menampilkan textbox pada layar display = Display."". textBox. display.• Lanjutan program : (bagian 2 – selesai) protected void startApp( ) { if (!started) { //Membuat elemen textbox textBox = new TextBox("Contoh TextBox". //Membuat ticker dan menampilkannya Ticker ticker = new Ticker("Ini adalah Ticker.getDisplay(this)."). TextField. MAX_TEXT_SIZE... } } protected void pauseApp( ) { } protected void destroyApp(boolean unconditional) { } } .

• Tampilan output program textbox anda : .

mungkin bagai anda yang pernah mempelajari HTML fungsi ticker ini mirip dengan penggunaan tag <marque> pada HTML. • Perbedaan penggunaan ticker pada J2ME dengan HTML adalah anda tidak dapat mengatur posisi munculnya ticker dan juga mengatur kecepatan dari ticker.Penggunaan Class Ticker • Class Ticker dalam pemrograman J2ME khususnya aplikasi MIDlet di gunakan untuk menggulung teks secara horizontal. . • Hanya perangkat yang menjalankan MIDletlah yang bisa mengatur letak dan kecepatan dari ticker.

• Pada contoh-contoh program lainnya.• Anda bisa menampilkan teks yang ingin di tampilkan dalam ticker dengan menggunakan fungsi getString(). yang di mana fungsi ini memerlukan 1 parameter yang berisi sebuah string yang akan menggantikan teks yang ingin di munculkan. mungkin anda juga akan melihat kembali penggunaan dari class Ticker. . • Contoh penggunaan ticker dapat anda lihat pada saat anda membuat program user interface elemen textbox. • Anda juga dapat mengganti teks yang ingin di munculkan dalam ticker dengan menggunakan fungsi setString().

• Dengan menggunakan list. aplikasi MIDlet juga memungkinkan user untuk memilih 1 atau beberapa dari pilihan dalam bentuk menu yang di berikan. . • Pilihan-pilihan yang di berikan bisa bersifat required artinya user harus memilih daftar list yang ada. • Penggunaan elemen list banyak sekali kita temui dalam perangkat yang ada karena akan memudahakan user dalam memberikan inputan pilihan khususnya bagi perangkat yang hanya menggunakan keypad sebagai inputannya. kemudian list juga bisa bersifat optional yang artinya user tidak harus memberikan inputan pilihan apapun.Membuat User Interface – Penggunaan Elemen List • List merupakan elemen user interface dalam aplikasi MIDlet yang bersifat pilihan yang akan di berikan pada user.

Multiple Choice List dalam bentuk CheckBox. • Masing-masing dari jenis list di atas di gunakan berdasarkan kebutuhan dari setiap pengembang perangkat (vendor) dan juga mempertimbangkan aspek yang di butuhkan oleh sebuah aplikasi dalam perangkat .• Umumnya pilihan yang di tampilkan dalam list di berikan dalam bentuk menu teks atau string. Implicit List dalam bentuk menu pilihan. walaupun penggunaan icon atau image juga bisa di gunakan untuk menampilkan pilihan dalam list. • Ada 3 macam jenis list yang dapat kita buat dan gunakan dalam aplikasi MIDP :    Exclusive Choice List dalam bentuk Radio Button.

• Contoh gambar dari penggunaan masing-masing list dalam perangkat : List Implicit Exclusive Choice List Multiple Choice List .

EXIT. pilihan.microedition. pilihan.setCommandListener(this). keluar = new Command("Keluar". pilihan.*.append("Biru". public multiplelist() { layar = Display.*.null). Beri nama MIDlet Class Name anda : multiplelist.null). import javax. pilihan. Command.MULTIPLE).append("Hijau". Choice.append("Merah". pilihan.addCommand(keluar).lcdui. import javax. public class multiplelist extends MIDlet implements CommandListener { private Display layar.midlet.• Contoh aplikasi MIDlet dengan menggunakan Multiple Choice List :   Beri nama Project Name anda : multiplelist. pilihan.null).null). pilihan = new List("Warna Kesukaan Anda : ". private Command keluar. pilihan.microedition.append("Lainnya".getDisplay(this).1). } .append("Kuning".null). private List pilihan.

Displayable display) { if(cmd == keluar) { destroyApp(false). } public void pauseApp() { } public void destroyApp(boolean unconditional) { } public void commandAction(Command cmd. } } } .setCurrent(pilihan).• Lanjutan program multiplelist. notifyDestroyed().java – bagian 2 (selesai) : public void startApp() { layar.

• Tampilan output program MIDlet multiple choice list anda : .

Choice.• Contoh program aplikasi MIDlet dengan menggunakan Exclusive Choice List :   Beri nama Project Name anda : listexclusive. pilihan.getDisplay(this).*.null). pilihan. pilihan. pilihan = new List("Pilih Jurusan Anda : ".append("Manajemen Informatika". private List pilihan.append("Sistem Informasi".null).lcdui.null). pilihan.null).microedition.midlet.append("Teknik Informatika".addCommand(keluar).append("Sistem Komputer". pilihan. pilihan.EXCLUSIVE).EXIT. } . public listexclusive() { layar = Display.setCommandListener(this).append("Komputer Akutansi". import javax. public class listexclusive extends MIDlet implements CommandListener { private Display layar. Command. private Command keluar.*. keluar = new Command("Keluar".1). import javax. pilihan.null). Beri nama MIDlet Class Name anda : listexclusive.microedition.

} } } . } public void pauseApp() { } public void destroyApp(boolean unconditional) { } public void commandAction(Command cmd.java – bagian 2 (selesai) : public void startApp() { layar.• Lanjutan program listexclusive. Displayable display) { if(cmd == keluar) { destroyApp(false).setCurrent(pilihan). notifyDestroyed().

• Tampilan output program MIDlet list exclusive anda : .

pilihan. private List pilihan.setCommandListener(this).microedition.getDisplay(this). pilihan. pilihan.null).1). keluar = new Command("Keluar".append("Games". public listimplicit() { layar = Display. List. public class listimplicit extends MIDlet implements CommandListener { private Display layar. import javax. private Command keluar. Command.• Contoh aplikasi MIDlet dengan menggunakan List Implicit :   Beri nama Project Name anda : listimplicit. Beri nama MIDlet Class Name anda : listimplicit.microedition.*.midlet.null). } .IMPLICIT).append("Internet".*. pilihan = new List("Menu : ". pilihan.lcdui.addCommand(keluar).EXIT. import javax.

} public void pauseApp() { } public void destroyApp(boolean unconditional) { } public void commandAction(Command cmd. Displayable display) { if(cmd == keluar) { destroyApp(false).setCurrent(pilihan). notifyDestroyed().java – bagian 2 (selesai) : public void startApp() { layar. } } } .• Lanjutan program listimplicit.

• Tampilan output program MIDlet list implicit anda : .

• ADA PERTANYAAN ??. • SELESAI. TERIMA KASIH. • SAMPAI BERTEMU DI PERTEMUAN SELANJUTNYA. .

2nd Edition. Programming Wireless Device with the Java 2 Platform. Enterprise J2ME : Developing Mobile Application. Jonathan Knudsen. . Michael Juntao Yuan. Wireless Java Developing with J2ME 2nd Edition. Pengembangan Perangkat Mobile.Credit for this slide : • • • • JENI. Roger Riggs and Team. Micro Edition.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->