1 / 47

MIDP ( MIDlet ) dan Tools

MIDP ( MIDlet ) dan Tools. Mobile Computing. MIDP. Saat ini versi 2.0 Package-package: javax. microedition.lcdui javax. microedition.lcdui.game javax. microedition.midet javax. microedition.media javax. microedition.media.control javax. microedition.rms javax. microedition.pki.

Télécharger la présentation

MIDP ( MIDlet ) dan Tools

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MIDP (MIDlet) dan Tools Marsel Willem Aipassa, S. Kom. Mobile Computing

  2. MIDP • Saatiniversi 2.0 • Package-package: • javax.microedition.lcdui • javax.microedition.lcdui.game • javax.microedition.midet • javax.microedition.media • javax.microedition.media.control • javax.microedition.rms • javax.microedition.pki Marsel Willem Aipassa, S. Kom.

  3. MIDP (2) • MIDP 2.0 menambahkanfasilitas-fasilitas yang telahadapada MIDP 1.0 • Pada MIDP 1.0 API terdapat application management, HTTP network connectivity, user interface dan persistent storage • MIDletmerupakansuatuaplikasi yang menggunakan MIDP Marsel Willem Aipassa, S. Kom.

  4. MIDlet Lifecycle • 3 state : • Active • Paused • Destroyed Marsel Willem Aipassa, S. Kom.

  5. StrukturdasarMIDlet import javax.microedition.midlet.*; public class <NamaKelasMIDlet> extends MIDlet { public <NamaKelasMIDlet>() {} public void startApp() { } public void pauseApp() { } public void destroyApp(boolean unconditional) { } } Marsel Willem Aipassa, S. Kom.

  6. Package javax.microedition.midlet • Terdapat 2 kelas (1 kelasuntuk exception) Marsel Willem Aipassa, S. Kom.

  7. KelasMIDlet • Konstruktor • protected MIDlet() • Metode-metodedarikelasdapatdilihatsebagaiberikut: Marsel Willem Aipassa, S. Kom.

  8. Metode-metodekelasMIDlet Marsel Willem Aipassa, S. Kom.

  9. Metode-metodekelasMIDlet (2) Marsel Willem Aipassa, S. Kom.

  10. Metode-metodekelasMIDlet (3) Marsel Willem Aipassa, S. Kom.

  11. KelasMIDletStateChangeException • Konstruktor • MIDletStateChangeException() • MIDletStateChangeException(String s), s adalahpesaneksepsi Marsel Willem Aipassa, S. Kom.

  12. Software Requirement • Java Environment (Java SDK) • Platform emulator (Sun Java (TM) Wireless Toolkit 2.5.2 for CLDC) • IDE (Netbeans 6.7.1) Marsel Willem Aipassa, S. Kom.

  13. Pilih File, New Project… Marsel Willem Aipassa, S. Kom.

  14. PilihKategori Java ME Marsel Willem Aipassa, S. Kom.

  15. Pada Projects, pilih Mobile Application Marsel Willem Aipassa, S. Kom.

  16. Berinamadanhilangkancentangpada ‘Create Hello MIDlet’ Marsel Willem Aipassa, S. Kom.

  17. Pilihjeniskonfigurasidan profile (disesuaikandengan device yang dituju) Marsel Willem Aipassa, S. Kom.

  18. MembuatMIDletbaru Marsel Willem Aipassa, S. Kom.

  19. BerinamaMIDletlalu Finish Marsel Willem Aipassa, S. Kom.

  20. ContohMIDletSederhana import javax.microedition.lcdui.*; import javax.microedition.midlet.*; public class HelloMIDlet extends MIDlet implements CommandListener{ private Form formMain; public HelloMIDlet() { formMain = new Form("Judul Form"); formMain.append(new StringItem("Label: ", “Hello MIDP World")); formMain.addCommand(new Command("Exit", Command.EXIT, 0)); formMain.setCommandListener(this); } Marsel Willem Aipassa, S. Kom.

  21. ContohMIDletSederhana (2) public void startApp() { Display.getDisplay(this).setCurrent(formMain); } public void pauseApp() {} public void destroyApp(boolean unconditional) {} public void commandAction(Command c, Displayable d) { if(c.getCommandType() == Command.EXIT){ destroyApp(true); notifyDestroyed(); } } } Marsel Willem Aipassa, S. Kom.

  22. Run Aplikasi (F6) Marsel Willem Aipassa, S. Kom.

  23. MIDlet Suite • BeberapaMIDletdapatditempatkankedalamsatuMIDlet suite • ContohMIDlet yang pertamaadalahHelloMIDlet yang sebelumnya Marsel Willem Aipassa, S. Kom.

  24. MIDlet Suite • Aplikasikedua import javax.microedition.lcdui.*; import javax.microedition.midlet.*; public class Welcome extends MIDlet implements CommandListener{ private Display disp; private TextBox txtBox; private Command cmdExit; public Welcome() { cmdExit = new Command("Exit", Command.EXIT, 0); txtBox = new TextBox("Welcome", "Mobile Computing", 50, 0); txtBox.addCommand(cmdExit); txtBox.setCommandListener(this); } Marsel Willem Aipassa, S. Kom.

  25. MIDlet Suite public void startApp() { disp = Display.getDisplay(this); disp.setCurrent(txtBox); } public void pauseApp() {} public void destroyApp(boolean unconditional) {} public void commandAction(Command c, Displayable d) { if(c == cmdExit){ destroyApp(true); notifyDestroyed(); } } } Marsel Willem Aipassa, S. Kom.

  26. MIDlet Suite • DengandibuatnyaMIDlet Welcome, makatelahadasebuahMIDlet Suite yang berisiduabuahMIDletyaitu ‘HelloMidlet’ dan ‘Welcome’ • DalamNetbeans, MIDletbaruotomatisditambahkankedalamMIDlet Suite Marsel Willem Aipassa, S. Kom.

  27. Run MIDlet Suite Marsel Willem Aipassa, S. Kom.

  28. MIDlet Suite • Setting dariMIDlet Suite dapatdiaturmelalui tab Application Descriptor pada Properties project Marsel Willem Aipassa, S. Kom.

  29. MIDlet Suite • Selainitu, setting MIDlet suite jugadapatdiatur/dilihatdari file manifest.mfdan file <nama_project>.jad • File manifest.mfberadadidalam folder ‘build’ daridirektori project • File <nama_project>.jadberadadidalam folder ‘dist’ daridirektori project • Isidarikedua file tersebutdapatdilihatsebagaiberikut: Marsel Willem Aipassa, S. Kom.

  30. File : manifest.mf MIDlet-2: Welcome, , WelcomeMIDlet-1: HelloMIDlet, , HelloMIDletMIDlet-Vendor: VendorMIDlet-Name: CobaMobileAppMIDlet-Version: 1.0MicroEdition-Configuration: CLDC-1.1MicroEdition-Profile: MIDP-2.1 Marsel Willem Aipassa, S. Kom.

  31. File : <nama_project>.jad MIDlet-1: HelloMIDlet, , HelloMIDlet MIDlet-2: Welcome, , Welcome MIDlet-Jar-Size: 2277 MIDlet-Jar-URL: CobaMobileApp.jar MIDlet-Name: CobaMobileApp MIDlet-Vendor: Vendor MIDlet-Version: 1.0 MicroEdition-Configuration: CLDC-1.1 MicroEdition-Profile: MIDP-2.1 Marsel Willem Aipassa, S. Kom.

  32. File Archive (.JAR) • SatuataulebihMIDletdapatdipaketkankedalamsatu file JAR yang berisi: • File manifest (.MF) yang mendeskripsikan content dari file JAR • KelasdariMIDlet-MIDlet yang adadidalamMIDlet suite sertakelas-kelas lain yang digunakanolehMIDlet yang beradadidalamMIDlet Suite • File resource (image, sound) yang digunakanolehMIDletdalamMIDlet suite Marsel Willem Aipassa, S. Kom.

  33. File Manifest (.MF) • File manifest (.MF) mendefenisikanatribut-atributdariMIDlet. Atribut-atributnantinyadigunakanoleh Application Management Software (AMS) pada device untukmengidentifikasikan, menginstalldanmenjalankanMIDlet. • Atribut-atribut yang digunakandapatdilihatpadatabelberikut Marsel Willem Aipassa, S. Kom.

  34. MIDlet Attribute Marsel Willem Aipassa, S. Kom.

  35. MIDlet Attribute Marsel Willem Aipassa, S. Kom.

  36. MIDlet Attribute Marsel Willem Aipassa, S. Kom.

  37. File Descriptor (.JAD) • Setiap file .JAR mempunyai file pendamping, yaitu file .JAD (Java Application Descriptor). File .JAD dan .JAR dipergunakanoleh AMS untukmengaturMIDlet • Aturanuntuk file descriptor: • Ekstensidari file adalah .jad • MIME type dari descriptor adalah: • text/vnd.sun.j2me.app-descriptor Marsel Willem Aipassa, S. Kom.

  38. File Descriptor (.JAD) • Atribut-atribut yang harusadadidalam descriptor antara lain: • MIDlet-Name • MIDlet-Version • MIDlet-Vendor • MIDlet-Jar-URL • MIDlet-Jar-Size Marsel Willem Aipassa, S. Kom.

  39. CLDC • CLDC 1.0, CLDC 1.1 (mendukung floating point) • Merupakan subset dari CDC dan Java SE • Package-package pada CLDC • java.lang • java.lang.ref (CLDC 1.1) • java.util • java.io • javax.microedition.io Marsel Willem Aipassa, S. Kom.

  40. CLDC Property • CLDC menyediakancarauntukmengaksespropertidarisistem • Propertidarisistemdapatdiaksesdenganmenggunakanmetode • System.getProperty(String key) • Contoh : • System.getProperty(“microedition.platform”); Marsel Willem Aipassa, S. Kom.

  41. CLDC Property (2) Marsel Willem Aipassa, S. Kom.

  42. MenginstalMIDletke device • Build Project Marsel Willem Aipassa, S. Kom.

  43. MenginstalMIDletke device (2) • Bukadirektori project, lalu copy file .jaddan .jar yang beradadidalam folder dist keperangkat Marsel Willem Aipassa, S. Kom.

  44. MenginstalMIDletke device (3) • Di perangat mobile, browse kedua file tadilalu install Marsel Willem Aipassa, S. Kom.

  45. TerimaKasih Marsel Willem Aipassa, S. Kom.

  46. Kuis • ApaituAMS?Apafungsinya? (20 poin) • ApaituMIDlet? (20 poin) • Sebutkandanjelaskanfungsidari 2 file yang beradadidalamMIDlet Suite! (20 poin) • Sebutkanversi CLDC dan MIDP terbaru! (20 poin) • Sebutkannamaasistenkelasini! (20 poin) Marsel Willem Aipassa, S. Kom.

  47. Tugas • Per kelompok • Install platform emulator lain untuk J2ME diNetbeans, sertakanscreenshot • Buataplikasi MIDP sederhanadan install diperangkat mobile • KumpulkanhariSenin jam 12 (softcopy screenshot dan source code aplikasi) diruanganpak Ramos Marsel Willem Aipassa, S. Kom.

More Related