📄 package-summary.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN""http://www.w3.org/TR/REC-html40/frameset.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc on Wed Sep 24 14:57:46 PDT 2003 -->
<TITLE>
MID Profile: Package javax.microedition.midlet
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">
<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_top"><!-- --></A><TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
<strong>MID Profile</strong></EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../javax/microedition/media/control/package-summary.html"><B>PREV PACKAGE</B></A>
<A HREF="../../../javax/microedition/pki/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html" TARGET="_top"><B>FRAMES</B></A>
<A HREF="package-summary.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->
<HR>
<H2>
Package javax.microedition.midlet
</H2>
The MIDlet package defines Mobile Information Device Profile applications and the interactions between the application and the environment in which the application runs.
<P>
<B>See: </B>
<BR>
<A HREF="#package_description"><B>Description</B></A>
<P>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Class Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="MIDlet.html">MIDlet</A></B></TD>
<TD>A <code>MIDlet</code> is a MID Profile application.</TD>
</TR>
</TABLE>
<P>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Exception Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="MIDletStateChangeException.html">MIDletStateChangeException</A></B></TD>
<TD>Signals that a requested <code>MIDlet</code> state change failed.</TD>
</TR>
</TABLE>
<P>
<A NAME="package_description"><!-- --></A><H2>
Package javax.microedition.midlet Description
</H2>
<P>
The MIDlet package defines Mobile Information Device Profile applications and the interactions between the application and the environment in which the application runs. An application of the Mobile Information Device Profile is a <CODE>MIDlet</CODE>. <H2>Applications</H2> <P> The MIDP defines an application model to allow the limited resources of the device to be shared by multiple MIDP applications, or MIDlets. It defines what a MIDlet is, how it is packaged, what runtime environment is available to the MIDlet, and how it should be behave so that the device can manage its resources. The application model defines how multiple MIDlets forming a suite can be packaged together and share resources within the context of a single Java Virtual Machine. Sharing is feasible with the limited resources and security framework of the device since they are required to share class files and to be subject to a single set of policies and controls.</P> <H3>MIDP MIDlet Suite</H3> <P> A MIDP application MUST use only functionality specified by the MIDP specification as it is developed, tested, deployed, and run.</P> <P> The elements of a MIDlet suite are:</P> <UL> <LI> Runtime execution environment</LI> <LI> MIDlet suite packaging</LI> <LI> Application descriptor</LI> <LI> Application lifecycle</LI> </UL> <P> Each device is presumed to implement the functions required by its users to install, select, run, and remove MIDlets. The term application management software is used to refer collectively to these device specific functions. The application management software provides an environment in which the MIDlet is installed, started, stopped, and uninstalled. It is responsible for handling errors during the installation, execution, and removal of MIDlet suites and interacting with the user as needed. It provides to the MIDlet(s) the Java runtime environment required by the MIDP Specification.</P> <P> One or more MIDlets MAY be packaged in a single JAR file. Each MIDlet consists of a class that extends the <CODE>MIDlet</CODE> class and other classes as may be needed by the MIDlet. The manifest in the JAR file contains attributes that are used during installation and execution of MIDlets. The MIDlet is the entity that is launched by the application management software. When a MIDlet suite is invoked, a Java Virtual Machine is needed on which the classes can be executed. A new instance of the MIDlet is created by the application management software and used to direct the MIDlet to start, pause, and destroy itself. </P> <P> Sharing of data and other information between MIDlets is controlled by the individual APIs and their implementations. For example, the Record Management System API specifies the methods that are used when the record stores associated with a MIDlet suite are shared among MIDlets.</P> <H2>MIDlet Suite Security</H2> <P>The MIDP 1.0 specification constrained each MIDlet suite to operate in a sandbox wherein all of the APIs available to the MIDlets would prevent access to sensitive functions of the device. That sandbox concept is used in this specification and all untrusted MIDlet suites are subject to its limitations. Every implementation of this specification MUST support running untrusted MIDlet suites. </P> <P>MIDP 2.0 introduces the concept of trusted applications that may be permitted to use APIs that are considered sensitive and are restricted. If and when a device determines that a MIDlet suite can be trusted the device allows access as indicated by the policy. <A HREF="doc-files/Authorization.html">Security for MIDP Applications</A> section describes the concepts and capabilities of untrusted and trusted applications.</P> <H3>MIDP Execution Environment</H3> <P> The MIDP defines the execution environment provided to MIDlets. The execution environment is shared by all MIDlets within a MIDlet suite, and any MIDlet can interact with other MIDlets packaged together. The application management software initiates the applications and makes the following available to the MIDlet:</P> <UL> <LI> Classes and native code that implement the CLDC, including a Java Virtual Machine</LI> <LI> Classes and native code that implement the MIDP runtime</LI> <LI> All classes from a single JAR file for execution</LI> <LI> Non-class files from a single JAR file as resources</LI> <LI> Contents of the descriptor file, when it is present</LI> <li> Any other APIs available on the device such as implementations of additional JSRs, Licensee Open Classes, Optional Packages, etc.</li> </UL> <P> The CLDC and Java Virtual Machine provide multi-threading, locking and synchronization, the execution of byte codes, dispatching of methods, etc. A single VM is the scope of all policy, naming, and resource management. If a device supports multiple VMs, each may have its own scope, naming, and resource management policies. MIDlet Suites MUST NOT contain classes that are in packages defined by the CLDC or MIDP. </P> <P> The MIDP provides the classes that implement the MIDP APIs. The implementation MUST ensure that the application programmer cannot override, modify, or add any classes to these protected system packages.</P> <P> A single JAR file contains all of the MIDlet's classes. The MIDlet may load and invoke methods from any class in the JAR file, in the MIDP, or in the CLDC. All of the classes within these three scopes are shared in the execution environment of the MIDlets from the JAR file. All states accessible via those classes are available to any Java class running on behalf of the MIDlet. There is a single space containing the objects of all MIDlets, MIDP, and CLDC in use by the MIDlet suite. The usual Java locking and synchronization primitives SHOULD be used when necessary to avoid concurrency problems. Each library will specify how it handles concurrency and how the MIDlet should use it to run safely in a multi-threaded environment.</P> <P> The class files of the MIDlet are only available for execution and can neither be read as resources nor extracted for re-use. The implementation of the CLDC may store and interpret the contents of the JAR file in any manner suitable.</P> <P> The files from the JAR file that are not Java class files are made available using <CODE>java.lang.Class.getResourceAsStream</CODE>. For example, the manifest would be available in this manner.</P> <P> The contents of the MIDlet descriptor file, when it is present, are made available via the <CODE>javax.microedition.midlet.MIDlet.getAppProperty</CODE> method.</P> <H3>MIDlet Suite Packaging</H3> <P> One or more MIDlets are packaged in a single JAR file that includes:</P> <UL> <LI> A manifest describing the contents</LI> <LI> Java classes for the MIDlet(s) and classes shared by the MIDlets</LI> <LI> Resource files used by the MIDlet(s)</LI> </UL> <P> The developer is responsible for creating and distributing the components of the JAR file as appropriate for the target user, device, network, locale, and jurisdiction. For example, for a particular locale, the resource files would be tailored to contain the strings and images needed for that locale.</P> <P> The JAR manifest defines attributes that are used by the application management software to identify and install the MIDlet suite and as defaults for attributes not found in the application descriptor. The attributes are defined for use in both the manifest and the optional application descriptor.</P> <P> The predefined attributes listed below allow the application management software to identify, retrieve, install, and invoke the MIDlet.</P> <TABLE BORDER="2"> <H6> MIDlet Attributes</H6> <TR> <TH ROWSPAN="1" COLSPAN="1"> <P> Attribute Name </P> </TH> <TH ROWSPAN="1" COLSPAN="1"> <P> Attribute Description</P> </TH> </TR> <TR> <TD ROWSPAN="1" COLSPAN="1"> <P> MIDlet-Name</P> <P> </P> </TD> <TD ROWSPAN="1" COLSPAN="1"> <P> The name of the MIDlet suite that identifies the MIDlets to the user.</P> </TD> </TR> <TR> <TD ROWSPAN="1" COLSPAN="1"> <P> MIDlet-Version</P> <P> </P> </TD> <TD ROWSPAN="1" COLSPAN="1"> <P> The version number of the MIDlet suite. Version numbers are <A HREF="#vernum">formatted</A> so they can be used by the application management software for install and upgrade uses, as well as communication with the user.</P> </TD> </TR> <TR> <TD ROWSPAN="1" COLSPAN="1"> <P> MIDlet-Vendor</P> </TD> <TD ROWSPAN="1" COLSPAN="1"> <P> The organization that provides the MIDlet suite.</P> </TD> </TR> <TR> <TD ROWSPAN="1" COLSPAN="1"> <P> MIDlet-Icon</P> </TD> <TD ROWSPAN="1" COLSPAN="1"> <P> The case-sensitive absolute name of a PNG file within the JAR used to represent the MIDlet suite. It SHOULD be used when the Application Management Software displays an icon to identify the suite.</P> </TD> </TR> <TR> <TD ROWSPAN="1" COLSPAN="1"> <P> MIDlet-Description</P> </TD>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -