Java ME
MIDlets Development Workflow




MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http...
Agenda

• Configurations and Profiles
• The main workflow
  – Write and package your code
  – Emulate
  – Deploy on device...
Key Components of the J2ME
Technology Stack



                                            Additional libraries for wirele...
What is a J2ME Configuration?

 • A configuration defines the minimum Java
   technology that an application developer
   ...
What is a J2ME Configuration?


 • A configuration defines the minimum Java™
   technology that an application developer
 ...
J2ME Configurations


 • J2ME Connected, Limited Device
   Configuration (CLDC)
   – Specifies Java environment for mobile...
What Is a J2ME Profile?


 • Java technology which supplements a
   configuration to provide capabilities for a
   specifi...
J2ME Profiles


 • J2ME Mobile Information Device Profile
   (MIDP)
   – Application runtime environment for wireless
    ...
JavaME Wireless Device Stack


                                             Your
                                         ...
The simplest thing...

 • Write the Java MIDlet + Java classes using your
   favorite editor... and compile
 • Create a Ja...
The big picture


   Development Station                                  Target J2ME
                                    ...
Sun Wireless Toolkit

  • Based on CLDC 1.1 and MIDP 2.0 reference
    implementations
  • Support for additional APIs
  •...
Sun Wireless Toolkit




  MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
Nokia Carbide.j




 MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
Sony Ericsson SDK




 MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
Motorola SDK




 MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
NetBeans

 • Most Comprehensive – Create mobile, desktop,
   web & enterprise appications with one single
   tool.
 • Best...
NetBeans Mobility Features
 • Support for MIDP & CLDC variants
     – MIDP 1.0/2.0
     – CLDC 1.0/1.1
     – ... also CDC...
NetBeans Mobility Features
 • Emulator support
     – Sun Wireless Toolkit included
     – OEM support (Nokia, SonyEricsso...
NetBeans Mobile Application Project

 • Let's create a Project
 • Application Descriptor Management
    – Attributes
    –...
References

 • Sun WTK: http://java.sun.com/javame

 • Netbeans: http://www.netbeans.org

 • Nokia: http://www.forum.nokia...
Java ME
MIDlets Development Workflow




MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http...
Speaker


  Edoardo Schepis
  Java ME Tech Lead at Funambol
  JMDF Founder

  email: edoardo.schepis@funambol.com
  weblog...
Upcoming SlideShare
Loading in...5
×

JavaME Development Workflow - JMDF 2007

1,015

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,015
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

JavaME Development Workflow - JMDF 2007

  1. 1. Java ME MIDlets Development Workflow MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  2. 2. Agenda • Configurations and Profiles • The main workflow – Write and package your code – Emulate – Deploy on devices • Tools – Sun Wireless Toolkit – Manufacturers SDK – NetBeans and Mobility Pack • References MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  3. 3. Key Components of the J2ME Technology Stack Additional libraries for wireless devices (GUI, storage, etc.) “Lowest common denominator” libraries for small devices MIDP Profile CLDC The execution engine Configuration KVM MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  4. 4. What is a J2ME Configuration? • A configuration defines the minimum Java technology that an application developer can expect on a broad range of implementing devices • Configurations are specified via the Java Community ProcessSM (JCP) initiative – May not contain any optional features – Implementations are tested via a compatibility test kit (TCK) MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  5. 5. What is a J2ME Configuration? • A configuration defines the minimum Java™ technology that an application developer can expect to be available on implementing devices – Broad range of devices – Similar requirements for memory size and processing capabilities • Configurations are specified via the Java Community ProcessSM (JCP) initiative MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  6. 6. J2ME Configurations • J2ME Connected, Limited Device Configuration (CLDC) – Specifies Java environment for mobile phone, pager and PDA class devices – CLDC devices are usually wireless • J2ME Connected Device Configuration (CDC) – Specifies Java environment for digital television set-top boxes, high end wireless devices and automotive telematics systems. – CDC devices may be wired (DTV cable, etc.) MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  7. 7. What Is a J2ME Profile? • Java technology which supplements a configuration to provide capabilities for a specific vertical market or device type • Defined through Java Community Process initiative MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  8. 8. J2ME Profiles • J2ME Mobile Information Device Profile (MIDP) – Application runtime environment for wireless devices based upon CLDC • J2ME Foundation Profile – Base profile for non-GUI networked devices based upon CDC • J2ME Personal Basis, Personal, and RMI Profiles – Basic graphics and RMI support for CDC & Foundation Profile based devices MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  9. 9. JavaME Wireless Device Stack Your MIDlet Yellow Pages, train schedules and ticketing, games… MIDP UI, HTTP 1.1 APIs networking... J2ME CLDC APIs java.lang.*, java.io.*, java.util.* javax.microedition… CLDC compliant VM (may be KVM) Threads, no Floats… Hardware RISC processor, ROM, Flash, RAM, etc. MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  10. 10. The simplest thing... • Write the Java MIDlet + Java classes using your favorite editor... and compile • Create a Java Application Descriptor (JAD)... it's just a text file • Package the classes in a JAR file • You've got your MIDlet Suite!!! MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  11. 11. The big picture Development Station Target J2ME Device Myapp.java Download Jad and JAR (containing Javac Myapp.class) MyMIDletSuite.jad Verifier Myapp.class MyMIDletSuite.jar Preverifier Package Interpreter Myapp.class MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  12. 12. Sun Wireless Toolkit • Based on CLDC 1.1 and MIDP 2.0 reference implementations • Support for additional APIs • Simple and easy to use • Tools to performance tune your applications • Can be customized to specific devices • Integration with commercially available Java IDEs: Eclipse, Netbeans MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  13. 13. Sun Wireless Toolkit MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  14. 14. Nokia Carbide.j MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  15. 15. Sony Ericsson SDK MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  16. 16. Motorola SDK MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  17. 17. NetBeans • Most Comprehensive – Create mobile, desktop, web & enterprise appications with one single tool. • Best out of box experience: a development environment that just works; no searching for plug-ins that cost time and money • NetBeans is 100% Java • NetBeans is Open Source & Free MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  18. 18. NetBeans Mobility Features • Support for MIDP & CLDC variants – MIDP 1.0/2.0 – CLDC 1.0/1.1 – ... also CDC • Visual Mobile Designer – Drag & drop MIDP authoring • Wireless Connection Wizard – E2E app development (web svcs, EJBs, etc.) • Device Fragmentation Solution – Preprocessing options for tackling discrepencies MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  19. 19. NetBeans Mobility Features • Emulator support – Sun Wireless Toolkit included – OEM support (Nokia, SonyEricsson, etc.) • Ant build support • MIDP localization • OTA testing • Code obfuscation • Code optimization MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  20. 20. NetBeans Mobile Application Project • Let's create a Project • Application Descriptor Management – Attributes – MIDlets details – Push Registry – Permissions • Build • Run – Standard – OTA simulation • Deployment MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  21. 21. References • Sun WTK: http://java.sun.com/javame • Netbeans: http://www.netbeans.org • Nokia: http://www.forum.nokia.com • Sony-Ericsson: http://developer.sonyericsson.com • Motorola: http://developer.motorola.com • BenQ: http://www.benqmobile.com/developer • Samsung: http://developer.samsungmobile.com • EclipseME: http://eclipseme.org/ MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  22. 22. Java ME MIDlets Development Workflow MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org
  23. 23. Speaker Edoardo Schepis Java ME Tech Lead at Funambol JMDF Founder email: edoardo.schepis@funambol.com weblog: http://www.edschepis.net Java Mobile Developers Forum: http://www.jmdf.org MIDlets Development Workflow - “Flash Lite vs. JavaME”, Bologna 29-01-2007 - http://www.jmdf.org

×