Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin...

47
Introduction to Introduction to Java ME Java ME Introduction to Introduction to Java ME Java ME Java ME Java ME Java ME Java ME Full Day Java and Android Seminar Full Day Java and Android Seminar Tangerang Tangerang, 11 , 11 Desember Desember 2011 2011 Dedy Dedy Alamsyah Alamsyah

Transcript of Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin...

Page 1: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Introduction toIntroduction to

Java MEJava MEIntroduction toIntroduction to

Java MEJava MEIntroduction toIntroduction to

Java MEJava MEIntroduction toIntroduction to

Java MEJava ME

Full Day Java and Android SeminarFull Day Java and Android SeminarTangerangTangerang, 11, 11 DesemberDesember 20112011

DedyDedy AlamsyahAlamsyah

Page 2: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Profil

Dedy Alamsyah Moslem Asli made-in Tangerang Perguruan Tinggi Raharja (STMIK Raharja) Dept Head IT : PT Alamkaca Prabawa Indonesia + Dosen STMIK Raharja Kenal Java dari tahun 2005 Email : [email protected] Ym : dygorgonites FB : www.facebook.com/alamsyahdedy Web : wafasa.wordpress.com (dah lama ndak diupdate)

Dedy Alamsyah Moslem Asli made-in Tangerang Perguruan Tinggi Raharja (STMIK Raharja) Dept Head IT : PT Alamkaca Prabawa Indonesia + Dosen STMIK Raharja Kenal Java dari tahun 2005 Email : [email protected] Ym : dygorgonites FB : www.facebook.com/alamsyahdedy Web : wafasa.wordpress.com (dah lama ndak diupdate)

Page 3: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Karakteristik Perangkat Mobile

Ukuran yang kecil Memory yang terbatas Daya proses yang terbatas Mengkonsumsi daya yang rendah Kuat dan dapat diandalkan Konektivitas yang terbatas Masa hidup yang pendek

Ukuran yang kecil Memory yang terbatas Daya proses yang terbatas Mengkonsumsi daya yang rendah Kuat dan dapat diandalkan Konektivitas yang terbatas Masa hidup yang pendek

Page 4: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Sekilas JME (Java Mobile Edition)

JME -> SUN -> Oracle so .. Java -> Oracle Platform Java untuk “Small Device” Bagian dari J2SE Pertama kali release pertengahan Juni 1999 Target devices: Two-way pagers Mobile phones, smart phones, PDA’s PDAs (inc PocketPCs) TVs, VCRs, CD players

Hampir semua peralatan mobile phone supprt JME

JME -> SUN -> Oracle so .. Java -> Oracle Platform Java untuk “Small Device” Bagian dari J2SE Pertama kali release pertengahan Juni 1999 Target devices: Two-way pagers Mobile phones, smart phones, PDA’s PDAs (inc PocketPCs) TVs, VCRs, CD players

Hampir semua peralatan mobile phone supprt JME

Page 5: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Why JME

Portabel (WORA) Write Once Run Anywhere Standard (SCJP) Sudah didisain dan dioptimasi untuk “Small Devices” Mewarisi “sebagian” ketangguhan JSE: Thread Security Exception API seperti : Java.io Java.lang Java.util

Portabel (WORA) Write Once Run Anywhere Standard (SCJP) Sudah didisain dan dioptimasi untuk “Small Devices” Mewarisi “sebagian” ketangguhan JSE: Thread Security Exception API seperti : Java.io Java.lang Java.util

Page 6: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

JME Buzz word

MIDP (Mobile Informatioan Device Profile) MIDlet adalah aplikasi Java yang berjalan pada paket J2ME. CDC (Connected Devices Configuration) CLDC (Connected Limited Devices Configuration) JAR (Java Archice ) Kumpulan file class java hasil compiled & file-file tambahan lainnya (image, dll) yang

dicompress sedemikian rupa. JAD (Java Application Descriptor) adalah sebuah file konfigurasi yang menjelaskan tentang file .jar, url

alamat file jar, sertifikat, (penjelasan & konfigurasi aplikasi MIDLet yng dibuat tsb). Mobile Devices dalam hal ini adalah emulator perangkat genggam (handphone, dll) standard (beberapa

spek tergantung vendor) yang support cldc dan midp sesuai dengan versinya masing-masing KVM (Kilo Virtual Machine) VM spesial untuk perangkat mobile (cldc)

40 sd 80 KB memory, 16 bit processor dng clock speed 25Mhz OTA (Over The Air) -> Download dan langsung install

MIDP (Mobile Informatioan Device Profile) MIDlet adalah aplikasi Java yang berjalan pada paket J2ME. CDC (Connected Devices Configuration) CLDC (Connected Limited Devices Configuration) JAR (Java Archice ) Kumpulan file class java hasil compiled & file-file tambahan lainnya (image, dll) yang

dicompress sedemikian rupa. JAD (Java Application Descriptor) adalah sebuah file konfigurasi yang menjelaskan tentang file .jar, url

alamat file jar, sertifikat, (penjelasan & konfigurasi aplikasi MIDLet yng dibuat tsb). Mobile Devices dalam hal ini adalah emulator perangkat genggam (handphone, dll) standard (beberapa

spek tergantung vendor) yang support cldc dan midp sesuai dengan versinya masing-masing KVM (Kilo Virtual Machine) VM spesial untuk perangkat mobile (cldc)

40 sd 80 KB memory, 16 bit processor dng clock speed 25Mhz OTA (Over The Air) -> Download dan langsung install

Page 7: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Java 2 Platform

Page 8: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Arsitektur JME Secara Umum

Kutipan dari J2ME “(http://java.sun.com/j2me/faq.html)FAQ: Konfigurasi dan Profil didefinisikan oleh “OpenIndustry” yang berdasar dari standar Sun JavaCommunity Process (SCJP)Program.Dengan cara ini pihak vendor dapat memutuskan sendiriapa unsur-unsur yang diperlukan untukmenyediakan solusi lengkap yang ditargetkan padaperalatan (handset) buatan mereka. Untuk informasi lebihlanjut tentang SCJP, lihat: http://jcp.org”

Kutipan dari J2ME “(http://java.sun.com/j2me/faq.html)FAQ: Konfigurasi dan Profil didefinisikan oleh “OpenIndustry” yang berdasar dari standar Sun JavaCommunity Process (SCJP)Program.Dengan cara ini pihak vendor dapat memutuskan sendiriapa unsur-unsur yang diperlukan untukmenyediakan solusi lengkap yang ditargetkan padaperalatan (handset) buatan mereka. Untuk informasi lebihlanjut tentang SCJP, lihat: http://jcp.org”

Page 9: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

JME Stack (Con’t) Configuration

merupakan spesifikasi yang mendefinisikan lingkungan perangkat lunak untuk berbagai peralatanberdasarkan sekumpulan karakteristik, seperti tipe dan jumlah memori yang tersedia, tipe dankecepatan processor, dan tipe koneksi jaringan yang tersedia. Configuration diharapkan dapatmerepresentasikan platform minimum bagi peralatan target. Vendor diperlukan untukmengimplementasikan spesikasi secara lengkap sehingga para pengembang dapat mengandalkanlingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi-aplikasi yangkompatibel dengan berbagai peralatan. Hingga saat ini terdapat dua J2ME configuration, yaitu :

CLDC, ditujukan pada peralatan elektronik yang memiliki sumber daya yang sangat terbatasdan dikembangkan untuk keperluan wireless Java, yang memungkinkan pengguna teleponseluler atau PDA untuk menginstalasi aplikasi Java (MIDlet) ke peralatan mereka;

CDC, ditujukan pada peralatan elektronik yang terletak antara peralatan yang didukung CLDCdan sistem desktop yang didukung J2SE, seperti set-top box,web telephone, dan high-end PDA.

Setiap configuration terdiri dari JVM dan kumpulan kelas Java yang menyediakan lingkunganpemrograman bagi pembuatan aplikasi. Spesifikasi configuration tidak mengharuskanimplementasi Java menggunakan virtual machine yang spesifik. Para vendor bebasmembuat virtual machine mereka sendiri asalkan memenuhi persyaratan minimum spesifikasi.Sun menyediakan implementasi kedua configurationdi atas, yang dapat menjadi pedoman bagipara vendor di mana JVM untuk implementasi CLDC dinamakan Kilobyte VirtualMachine (KVM) dan untuk implementasi CDC dinamakan CVM.

Configurationmerupakan spesifikasi yang mendefinisikan lingkungan perangkat lunak untuk berbagai peralatanberdasarkan sekumpulan karakteristik, seperti tipe dan jumlah memori yang tersedia, tipe dankecepatan processor, dan tipe koneksi jaringan yang tersedia. Configuration diharapkan dapatmerepresentasikan platform minimum bagi peralatan target. Vendor diperlukan untukmengimplementasikan spesikasi secara lengkap sehingga para pengembang dapat mengandalkanlingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi-aplikasi yangkompatibel dengan berbagai peralatan. Hingga saat ini terdapat dua J2ME configuration, yaitu :

CLDC, ditujukan pada peralatan elektronik yang memiliki sumber daya yang sangat terbatasdan dikembangkan untuk keperluan wireless Java, yang memungkinkan pengguna teleponseluler atau PDA untuk menginstalasi aplikasi Java (MIDlet) ke peralatan mereka;

CDC, ditujukan pada peralatan elektronik yang terletak antara peralatan yang didukung CLDCdan sistem desktop yang didukung J2SE, seperti set-top box,web telephone, dan high-end PDA.

Setiap configuration terdiri dari JVM dan kumpulan kelas Java yang menyediakan lingkunganpemrograman bagi pembuatan aplikasi. Spesifikasi configuration tidak mengharuskanimplementasi Java menggunakan virtual machine yang spesifik. Para vendor bebasmembuat virtual machine mereka sendiri asalkan memenuhi persyaratan minimum spesifikasi.Sun menyediakan implementasi kedua configurationdi atas, yang dapat menjadi pedoman bagipara vendor di mana JVM untuk implementasi CLDC dinamakan Kilobyte VirtualMachine (KVM) dan untuk implementasi CDC dinamakan CVM.

Page 10: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

JME Stack (Con’t)

ProfileDimaksudkan untuk memperkaya fitur configuration dengan menyediakan tambahan kelas yang lebihspesifik ke tipe peralatan. MIDP merupakan J2ME profileyang paling dikenal saat ini karena peralatan yangmendukung MIDP (seperti telepon seluler dan PDA) merupakan produk yang sangat dibutuhkan pasar.Adanya fitur konektivitas Internet pada peralatan-peralatan yang mendukung MIDP membuat merekamenjadi platform yang sangat menarik untuk aplikasi distribusi.Perpaduan antara CLDC dan MIDP menyediakan fungsionalitas untuk melakukan konektivitas ke Internet,mengelola record management system, membuat antarmuka aplikasi (termasuk game), memainkan dataaudio dan video, dan lain-lain, yang memungkinkan berbagai aplikasi diimplementasikan di peralatan-peralatan yang mendukung MIDP.

Optional APIMendefinisikan fungsionalitas tambahan yang dapat disertakan ke platform J2ME. Contoh optionalAPI pada platform J2ME antara lain Web Service Access for J2ME, Java API for Bluetooth WirelessTechnology (JABWT), Wireless Messaging API 1.1, Wireless Messaging API 2.0, Mobile Media API,dan Location API for J2ME.

ProfileDimaksudkan untuk memperkaya fitur configuration dengan menyediakan tambahan kelas yang lebihspesifik ke tipe peralatan. MIDP merupakan J2ME profileyang paling dikenal saat ini karena peralatan yangmendukung MIDP (seperti telepon seluler dan PDA) merupakan produk yang sangat dibutuhkan pasar.Adanya fitur konektivitas Internet pada peralatan-peralatan yang mendukung MIDP membuat merekamenjadi platform yang sangat menarik untuk aplikasi distribusi.Perpaduan antara CLDC dan MIDP menyediakan fungsionalitas untuk melakukan konektivitas ke Internet,mengelola record management system, membuat antarmuka aplikasi (termasuk game), memainkan dataaudio dan video, dan lain-lain, yang memungkinkan berbagai aplikasi diimplementasikan di peralatan-peralatan yang mendukung MIDP.

Optional APIMendefinisikan fungsionalitas tambahan yang dapat disertakan ke platform J2ME. Contoh optionalAPI pada platform J2ME antara lain Web Service Access for J2ME, Java API for Bluetooth WirelessTechnology (JABWT), Wireless Messaging API 1.1, Wireless Messaging API 2.0, Mobile Media API,dan Location API for J2ME.

Page 11: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

JME mempunyai 2 konfigurasi

CDC (Connected Device Konfiguration) CLDC (Connected Limited Device Konfiguration)

Page 12: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Arsitektur MIDP

Page 13: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Package di JME

Page 14: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Kelas-kelas untuk UI

High Level UILow Level UI

Page 15: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Networking and the Generic ConnectionFramework

CLDC Generic Connection Framework MIDP 2.0 Generic Connection Framework

Page 16: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Contoh Tampilan

Page 17: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Proses Kompilasi di JME

Page 18: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Struktur Project JME

J2ME/apps/{proj} source, resource, dan file-file binary J2ME/apps/{proj}/bin JAR, JAD, unpacked manifest files. J2ME/apps/{proj}/lib Class-class external libraries, (JAR or ZIP) untuk project tertentu J2ME/apps/{proj}/res resource files J2ME/apps/{proj}/src source files J2ME/apps/lib external class libraries, (JAR or ZIP) for all KToolbar projects.

J2ME/apps/{proj} source, resource, dan file-file binary J2ME/apps/{proj}/bin JAR, JAD, unpacked manifest files. J2ME/apps/{proj}/lib Class-class external libraries, (JAR or ZIP) untuk project tertentu J2ME/apps/{proj}/res resource files J2ME/apps/{proj}/src source files J2ME/apps/lib external class libraries, (JAR or ZIP) for all KToolbar projects.

Page 19: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Komunikasi di JME

Page 20: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Penyimpanan di JME

RMS (Record Mangement System)

Simple RMS pada J2ME RMS(Record Management System) merupakansuatu mekanisme yang digunakan oleh MIDP untuk menyimpan data,pada dasarnya RMS menyimpan kumpulan kumpulan record pada memoripersistance, memori persistance adalah suatu bentuk penyimpanan non-volatile dalam sebuah aplikasi Midlet, untuk menyimpan data tersebutdiperlukan sebuah class RecordStore, class ini digunakan untuk membukasuatu ruang penyimpan

Non relational database Bentuk umum :

RecordStore.openRecordStore(String recordStoreName, boolean createIfNecessary)

RMS (Record Mangement System)

Simple RMS pada J2ME RMS(Record Management System) merupakansuatu mekanisme yang digunakan oleh MIDP untuk menyimpan data,pada dasarnya RMS menyimpan kumpulan kumpulan record pada memoripersistance, memori persistance adalah suatu bentuk penyimpanan non-volatile dalam sebuah aplikasi Midlet, untuk menyimpan data tersebutdiperlukan sebuah class RecordStore, class ini digunakan untuk membukasuatu ruang penyimpan

Non relational database Bentuk umum :

RecordStore.openRecordStore(String recordStoreName, boolean createIfNecessary)

Page 21: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Siklus MIDlet

Controlled byAMS

(If An Exception is thrown)

New

Page 22: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Penjelasan Siklus MIDlet

1. Ketika MIDLet dijalankan, sebuah instance dibuat. Konstruktor MIDlet dijalankandan MIDlet memasuki fase Jeda (Paused)

2. Selanjutnya, MIDlet masuk ke fase Aktik setelah AMS memanggil methodstartApp().

3. Selama MIDlet dalam posisi Aktif, AMS dapat dapat memberhentikan sementaradengan memanggil method pauseApp(). Hal ini berefek kepada kembalinyaMIDlet ke fase Jeda (Paused). Sebuah MIDlet dapat menempatkan dirinya sendirike fase Jeda (Paused) dengan memanggil method notifyPaused().

4. Selama MIDlet dalam fase Jeda (Paused), AMS dapat memanggil methodstartApp() untuk kembali ke fase Aktif.

5. AMS (Application Management Software) dapat menghentikan eksekusi dariMIDlet dengan memanggil method destroyApp(), yang dalam hal ini MIDletharus juga menunggu proses “garbage collection”. Dan akhirnya MIDlet dapat“membunuh” dirinya sendiri dengan memanggil method notifyDestroyed().

1. Ketika MIDLet dijalankan, sebuah instance dibuat. Konstruktor MIDlet dijalankandan MIDlet memasuki fase Jeda (Paused)

2. Selanjutnya, MIDlet masuk ke fase Aktik setelah AMS memanggil methodstartApp().

3. Selama MIDlet dalam posisi Aktif, AMS dapat dapat memberhentikan sementaradengan memanggil method pauseApp(). Hal ini berefek kepada kembalinyaMIDlet ke fase Jeda (Paused). Sebuah MIDlet dapat menempatkan dirinya sendirike fase Jeda (Paused) dengan memanggil method notifyPaused().

4. Selama MIDlet dalam fase Jeda (Paused), AMS dapat memanggil methodstartApp() untuk kembali ke fase Aktif.

5. AMS (Application Management Software) dapat menghentikan eksekusi dariMIDlet dengan memanggil method destroyApp(), yang dalam hal ini MIDletharus juga menunggu proses “garbage collection”. Dan akhirnya MIDlet dapat“membunuh” dirinya sendiri dengan memanggil method notifyDestroyed().

Page 23: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Tools untuk develop JME

JME SDK Editor (Netbeans + Mobility Pack, Eclipse ME, Gel, Notepad ++) Emulator Toolkit (Java Platform Micro Edition SDK, Sun Wireless Toolkit,

Sprint Wireless Toolkit, dll)

Java MobileSDK

Java MobileSDK

Page 24: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

JME

Simpel DemoSimpel Demo

Page 25: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Sun Wireless Toolkit

Jalankan Sun Wireless Ktoolbar New Project -> Isi nama project , Nama Class -> Create Project Navigasi ke folder hasil generate SWTK Toolbar -> folder src Buat satu buah file MIDLet dengan Nama HelloJME.java dan isi dengan kode java Lewat Ktoolbar tekan tombol Buil untuk compiled dan Klik Run untuk menjalankan file tsb.

Page 26: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Netbeans

Install SDK Install Netbeans with Mobility Pack Install Sun Wireless Toolkit

From Netbeans1. New -> Project

Install SDK Install Netbeans with Mobility Pack Install Sun Wireless Toolkit

From Netbeans1. New -> Project

Page 27: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

1. New -> Project-> Java ME -> Mobile Application

Page 28: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

2. Isi Project Name (Uncheck pilihan Create HelloMIDlet) -> Next

Page 29: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

3. Pilih Platform (Sun WTK), Device Configurationdan Device Profile -> Next -> Finish

Page 30: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

4. Dari project yg tadi dibuat -> New -> MIDlet->Beri Nama -> Finish

Page 31: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

5. Default “Code Generated” aplikasi MIDlet

Page 32: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

6. Create Hello JME

Page 33: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

7. Klik kanan project -> Clean & Build -> Run

Page 34: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

JME

DEMO(JME)DEMO(JME)

Page 35: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

JME Selanjutnya ?

Solusi untuk keterbatasa UI

LWUIT JMEPOLISH

Solusi untuk keterbatasa UI

LWUIT JMEPOLISH

Page 36: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

LWUIT (Lightweight User Interface Toolkit)

Page 37: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Apasih LWUIT ?

LWUIT - > Lightweight UI Toolkit LWUIT dari SUN -> Oracle LWUIT is 100% gratis untuk tujuan Commercial dan non-commercial dan menggunakan lisensi GPL +

“Classpath exception” yang artinya LWUIT bebas didistribusikan di dalam aplikasi yang kita buat. Awalnya sekedar “Library UI” untuk menutupi keterbatasan JME Versi terbaru LWUIT adalah 1.5 Dapat didownload di

http://www.oracle.com/technetwork/java/javame/javamobile/download/lwuit/index.html LWUIT compatible di JME, Blackberry, Android Versi terbaru sudah support fungsi yang lain:

LWUIT - > Lightweight UI Toolkit LWUIT dari SUN -> Oracle LWUIT is 100% gratis untuk tujuan Commercial dan non-commercial dan menggunakan lisensi GPL +

“Classpath exception” yang artinya LWUIT bebas didistribusikan di dalam aplikasi yang kita buat. Awalnya sekedar “Library UI” untuk menutupi keterbatasan JME Versi terbaru LWUIT adalah 1.5 Dapat didownload di

http://www.oracle.com/technetwork/java/javame/javamobile/download/lwuit/index.html LWUIT compatible di JME, Blackberry, Android Versi terbaru sudah support fungsi yang lain:

Page 38: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Fitur dari LWUIT

LWUIT Designer - Allows creating themes, user interfaces (GUI builder), localization etc. Swing Like MVC (Model View Controller) Layouts PLAF (Pluggable Look And Feel) & Themes Fonts Touch UI - Tensile/tactile drag and touch UI XML/HTML Animations & Transitions Rich widgets 3D Integration (Optional) Painters Modal Dialogs External Tools I18N/L10N (Localization) Virtual keyboard SVG Integration (Optional)

LWUIT Designer - Allows creating themes, user interfaces (GUI builder), localization etc. Swing Like MVC (Model View Controller) Layouts PLAF (Pluggable Look And Feel) & Themes Fonts Touch UI - Tensile/tactile drag and touch UI XML/HTML Animations & Transitions Rich widgets 3D Integration (Optional) Painters Modal Dialogs External Tools I18N/L10N (Localization) Virtual keyboard SVG Integration (Optional)

Page 39: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

LWUIT – Sekilas API

Page 40: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Contoh Tampilan

Page 41: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

LWUIT Sekilas API (Con’t)

From : http://lwuit.java.net/nonav/iodocs/index.html

Page 42: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

LWUIT V 1.5 (What’s New)

Page 43: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

LWUIT V 1.5 (What’s New) (Con’t)

Page 44: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

LWUIT “IDE” Designer (LWUIT Resources Editor)

Page 45: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

Apa sih LWUIT Resources Editor itu ?

Sebuah aplikasi visual GUI Standalone yang dibuat dari Java Hanya terdiri dari sebuah file .jar (ResourceEditor.jar) Membuat, mengedit package resource dari aplikasi LWUIT Juga mampu membuat theme, animation dan dapat dipreview Dapat mengekspor menjadi Netbeans Project Format file berextensi .res (contoh : theme.res) Terdapat dalam paket ketika kita mendownload LWUIT versi terbaru. Terdapat di direktori resources editor di dalam folder root LWUIT.

Sebuah aplikasi visual GUI Standalone yang dibuat dari Java Hanya terdiri dari sebuah file .jar (ResourceEditor.jar) Membuat, mengedit package resource dari aplikasi LWUIT Juga mampu membuat theme, animation dan dapat dipreview Dapat mengekspor menjadi Netbeans Project Format file berextensi .res (contoh : theme.res) Terdapat dalam paket ketika kita mendownload LWUIT versi terbaru. Terdapat di direktori resources editor di dalam folder root LWUIT.

Page 46: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility

LWUIT

DEMO(LWUIT)

Resource EditorLWUIT Simple

DEMO(LWUIT)

Resource EditorLWUIT Simple

Page 47: Introduction to Java ME - · PDF filelingkungan pemrograman yang konsisten dan sedapat mungkin membuat aplikasi ... MIDP membuat mereka menjadi platform yang ... (Netbeans + Mobility