Mobile Information Device Profile
for Java 2 Micro Edition:
Professional Developer's Guide
The first book exclusively devoted to
Java programming with the Mobile Information Device Profile (MIDP),
a Java 2 Micro Edition (J2ME) profile that lets you
run Java applications in cellular telephones,
interactive pagers, and other handheld devices. This book
is written by two of the acknowledged experts in the field
and serves as a comprehensive tutorial and reference to
MIDP programming specifically and J2ME programming in general.
||C. Enrique Ortiz and Eric Giguere|
||John Wiley & Sons|
||Chapter 1 (PDF format)|
Buy from Amazon.com
The Mobile Information Device Profile (MIDP) is the first Java 2 Micro Edition
(J2ME) profile to be defined through the Java Community Process (JCP).
Defined by an expert group consisting of major industry players like Motorola, Nokia, Research in
Motion, Palm, and others, the MIDP defines a Java runtime environment for devices that
are very constrained in terms of resources and capabilities (memory, CPU speed, input devices,
power usage). It does this by extending the basic Java runtime environment defined by
the J2ME Connected Limited Device Configuration (CLDC) to include classes for networking,
user interface creation, and local data persistence.
This book discusses everything you need to know about MIDP 1.0 programming
and includes numerous examples of real-world scenarios. It also serves
as a general introduction to J2ME programming.
The book is organized into 11 chapters and two appendices and serves as a
complete guide to MIDP 1.0 programming.
Chapter 1, "Java 2 Micro Edition Basics", introduces you to J2ME. It discusses
how J2ME evolved and presents the concepts of configurations and profiles. It
finishes with an overview of the Connected Limited Device Configuration
(CLDC), the configuration that determines the core capabilities of the Java runtime
environment used in MIDP-enabled devices. (For more detailed information
on J2ME in general, refer to Java 2 Micro Edition:
Professional Developer's Guide, also published by John Wiley & Sons.)
Note: this chapter is available for you to read online in
Adobe PDF format.
Chapter 2, "The Mobile Information Device Profile", introduces you to the
Mobile Information Device Profile, version 1.0. It includes a discussion of
Chapter 3, "The MIDlet Lifecycle", describes how to build and run MIDP applications,
which we refer to as MIDlets for short. A MIDlet resembles a Java
applet, but it has different behavior and different requirements. Included in this
chapter are all the steps required to build and package MIDlets by hand or with
a development tool as well as a discussion of how MIDlets behave and what
kind of programming errors to avoid.
Chapter 4, "User Interface Basics", describes the MIDP user interface model
and how to use the new user interface (UI) classes that the MIDP defines,
which are different from the Abstract Windowing Toolkit (AWT) or Swing
classes that you already know. The MIDP defines high-level and low-level UI
abstractions, both of which are covered here. Each user interface component is
covered in detail.
Chapter 5, "User Interface Examples", takes you step-by-step through MIDP
programming examples that demonstrate how to combine the user interface
classes described in Chapter 4 to build complete user interfaces.
Chapter 6, "Network Communication", describes how MIDlets can communicate
with external servers by using HTTP and other protocols. It starts with a
detailed explanation of the CLDC's Generic Connection Framework, first introduced
in Chapter 1. It then proceeds to show you how you can use HTTP as a
way to exchange data with servers on the Internet.
Chapter 7, "The Record Management System", describes the MIDP's persistence
mechanism. The Record Management System (RMS) lets you store arbitrary
data locally on the device without involving a server.
Chapter 8, "Security", describes how MIDlets can securely exchange data and
authenticate users. Security is always important but is especially so on wireless
devices. MIDP security is still in its infancy and is quite limited, but it warrants
a separate discussion.
Chapter 9, "Using XML In MIDP Applications", demonstrates how XML can be
used to communicate with servers to exchange data and invoke Web services.
Although XML is not part of the MIDP specification, there are MIDP-compatible
XML parsers available that you can include in your applications. Besides
explaining what XML is and how XML documents are created and parsed, this
chapter also demonstrates how to invoke Web services by using the XML-based
Simple Object Access Protocol (SOAP).
Chapter 10, "Techniques for Writing Better MIDP Applications", describes how
to avoid potential pitfalls and how to make your MIDP applications more
portable and more efficient.
Chapter 11, "Final Thoughts", wraps up our discussion of MIDP programming
and describes alternatives and future directions.
Appendix A, "MIDP/CLDC Quick Reference", is a complete reference guide to
all the classes defined by the MIDP 1.0 and CLDC 1.0 specifications.
Appendix B, "Resources", lists J2ME and MIDP programming resources.
For More Information
See my J2ME pages
for more J2ME information.