230 likes | 350 Views
Developing an Application with J2ME Technology. Scott Palmer, Nat Panchee, Judy Sullivan, Karen Thabet, Sten Westgard. Java - “One size does not fit all”. Java Technology - Editions. Memory footprint decreases. J2ME - Characteristics. J2ME maintains qualities of Java Technology
E N D
Developing an Application with J2ME Technology Scott Palmer, Nat Panchee, Judy Sullivan, Karen Thabet, Sten Westgard
Java Technology - Editions Memory footprint decreases
J2ME - Characteristics • J2ME maintains qualities of Java Technology • Consistency across products • Portability of code
J2ME - Characteristics • Run anywhere, anytime and on any device • Safe network delivery • Upward scalability with J2SE and J2EE technology • OOP base language
What is a Configuration? • Specifies Java Programming language features supported • Specifies the JVM features supported • Specifies the basic Java libraries and APIs supported
J2ME Configurations • Connected Device Configuration (CDC) • Connected Limited Device Configuration (CLDC) • Purpose: • CDC – High end consumer devices • CDLC – Low end consumer devices
CDC • 32 bit processor • >.5MB (ROM+RAM) • JVM support • High bandwidth network connectivity • Devices include: • Communicators • Next Generation Smart Phones • Home Appliances • Car Navigation Systems
CLDC • 16-32 bit processor • >160-512kB (ROM+RAM) • KVM support • Limited power/battery, network, GUI, Java class libraries • Devices include: • Cell phones • Personal Digital Assistants • Pagers
America Online Bull Ericsson Fujitsu Matsushita Mitsubishi Motorola Nokia NTT DoCoMo Oracle Palm Computing RIM Samsung Sharp Siemens Sony SunMicrosystems Symbian CLDC Expert Group
CLDC Packages • CLDC packages: • java.lang • java.io • java.util • javax.microedition.io
CLDC • CLDC limitations: • No Floating-point Support • No Finalization • Error Handling Limitations • Limited Internationalization Support
MIDP – Mobile Information Device Profile MIDP + CLDC = Part of J2ME Runtime Environment MIDP addresses: • User Interface • Persistent storage • Networking • Application model
MIDP Packages MIDP Packages: • javax.micoredition.io • javax.microedition.midlet • javax.microedition.lcdui • javax.microedition.rms
What is a MIDlet? • MIDP Application = MIDlet • MIDlet is similar to applet. • MIDlet Structure: • startApp() • pauseApp() • destroyApp(boolean unconditional)
Paused pauseApp( ) startApp( ) Active destroyApp( ) destroyApp( ) Destroyed MIDlet’s Life Cycle
Hello Midlet import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class HelloMidlet extends MIDlet { private Display display; TextBox box = null; public HelloMidlet() { } public void startApp() { display = display.getDisplay(this); box = new TextBox("Midlet Example", "Hello CS616", 20, 0); display.setCurrent(box); } public void pauseApp() { } public void destroyApp(boolean unconditional) { } }
Developer Opportunities • Mobile Internet services • Value added services • Business to business apps
Java Enabled Device Future “In 2002, Nokia will deliver more than 50 million Java enable phones; more than 100 million deliveries by end of 2003.” Pekka Ala-Pietila, Nokia President, JavaOne, 2001