Download
developing software for wireless devices n.
Skip this Video
Loading SlideShow in 5 Seconds..
Developing Software for Wireless Devices PowerPoint Presentation
Download Presentation
Developing Software for Wireless Devices

Developing Software for Wireless Devices

106 Views Download Presentation
Download Presentation

Developing Software for Wireless Devices

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Developing Software for Wireless Devices Robert Hatch Sean Meredith James Pate Williams, Jr.

  2. Overview • Sun Java SDK 1.3 • Forte • Sun Java Micro Edition • Packages of MIDP

  3. Desirable Software Components • Sun Java 1.3.1+ Software Development Kit • Sun Forte 3.0 Integrated Development Environment • Sun Java 2 Micro Edition Wireless Toolkit • All are freely downloadable from Sun and require at least a 450 MHz Pentium II with 128 MB of RAM

  4. Sun Java 2 SDK 1.3 • Improvements • more robust than previous Java SDKs • sound API that includes a MIDI synthesizer and sequencer • support for the Java 2 Micro Edition Wireless Toolkit

  5. Sun Forte 3.0 • Integrated Development Environment for Java programming • comparable to Borland’s JBuilder 5.0 • constructed using Java • a resource hog

  6. Sun Java2 ME Wireless Toolkit • Version 1.0.3 can be used either in integrated mode with Forte 3.0 or as a stand alone product. • The integrated version is easier for code development and testing • The Wireless Toolkit implements a Mobile Information Device Profile (MIDP) for some common wireless devices

  7. Wireless Toolkit • The toolkit includes the following emulators: • default grey phone • minimum phone • Motorola i85s • Palm OS device • RIM Java handheld

  8. Wireless Toolkit • The emulators can function fairly closely to read devices in terms of the GUIs that they offer.

  9. Java Mobile Information Device Profile (MIDP) • Consists of five packages: • user interface package • persistence package • application lifecycle package • networking package • core packages

  10. User Interface Package • Listener interfaces • ChoiceAPI • CommandListener • ItemStateListener • Buttons • defined as commands • actions can be captured by implementing the CommandListener interface, e.g. by defining the commandAction method

  11. Alert Canvas Command ChoiceGroup DateField Display Font Form Gauge Graphics Image Item List Screen Ticker User Interface Package: Common GUI Elements

  12. Persistence Package • Components • RecordComparator • RecordEnumeration • RecordFilter • RecordListener • Associated class • RecordStore - a class representing a record store

  13. Application Lifecycle Package • Defines Mobile Information Device Profile applications and interactions between the application and the environment in which the application runs • Class associated • MIDlet - MIDP application on the device • States • Paused • Active • Destroyed

  14. MIDlet Life Cycle

  15. Networking Package • Components • Connection • ContentConnection • Datagram • DatagramConnection • HttpConnection • InputConnection

  16. Networking Package • Components • OutputConnection • StreamConnection • StreamConnectionNotifier • Associated class • Connector - placeholder for the static methods that are used for creating all the Connection jobs.

  17. Networking Package • Support for stream connections (TCP/IP) and datagram connections (UDP/IP) • TCP/IP - connection-oriented protocol; reliable and in-order delivery of packets • UDP/IP - connectionless-oriented protocol; unreliable and possibly out-of-order delivery of packets

  18. Networking Package (Cont.) • Some wireless devices such as Palm OS devices do not offer the datagram protocol and only use stream connections • Java MIDP supports HTTP connections • TCP/IP networking is fairly straightforward and only requires a few lines of code to implement

  19. Core Packages • java.io • java.lang • java.util

  20. Wireless Device Software Development Steps • Create a MIDlet suite template using Forte 3.0 • Fill in the MIDlet details to incorporate desired functionality • Execute code on various emulators; the same code behaves differently on distinct platforms • Port code to desired device • Test on an actual wireless device

  21. Demo