|
Along with J2ME (Java 2 Micro Edition) is being used widely in the phone and other products, and Google is making use of Java technology successfully in Android phone, all has indicated that Java technology will soon be popular in various embedded devices.
mPeer provides highly effective implementation of JAVA AWT/Swing for embedded devices. mPeer was developed based on GNU’s open source J2SE (Java 2 Standard Edition) class library ClassPath, and it provides MiniGUI implementation of J2SE AWT/Swing interface for ClassPath, thus it provides a low consumption of resources, high-performance, low-cost open source solution for embedded devices that intend to use the J2SE technology. The latest version of mPeer is 2.0.
The picture below illustrates the framework of mPeer-based embedded J2SE solution:

As shown in the figure above, mPeer is a middle layer, which connects MiniGUI (including MiniGUI development libraries) with AWT module of GNU ClassPath to make it run seamlessly on any J2SE code.
In this framework, Linux, JVM, J2SE, mPeer, and MiniGUI are developed based on open source software or open source software itself, which greatly reduces the cost of embedded Java platform.
mPeer is not an independent module, but a middle layer which connects MiniGUI with AWT. After several reconstruction and optimization, mPeer makes the most of the existing function of MiniGUI to achieve Java-enabled, mapping the heaviest operation part to MiniGUI API, which makes the efficiency of application of Java AWT based on mPeer close to the efficiency of application that use MiniGUI API directly.
The AWT implementation in mPeer
mPeer supports all of the J2SE AWT features, these features include:
1. AWT window components: Component Window Frame Container Label Button - Checkbox
| Choice List Panel Canvas ScrollPanel TextComponent TextField
| TextArea MenuComponent MenuBar PopupMenu MenuItem CheckboxMenuItem FileDialog*
|
2. AWT graphics system: Font Graphics2D* GraphicsDevice
| | - GraphicsGraphics
- Configuration
|
Note: FileDialog needs the support of MiniGUI mGUtils component; AWT Graphics2D interface needs the support of MiniGUI mGPlus component.
The Swing implementation in mPeer
Swing is enhanced AWT support, and it provides more graphic controls. All the control classes of mPeer are implemented in mPeer, the controls and corresponding control class of Swing as follows:
Swing control list Swing Control Name | Corresponding Control Class Name | static box control | JLable | single-line text input control | JTextField | multi-line text input control | JTextArea | format text input control | JEditPane | list box control | JList | button control | JButton | checkbox | JCheckBox | combo box control | JComboBox | dialog control | JDialog | common window control | JWindow | common framework control | JFrame | menu component | JMenu | popup menu | JPopupMenu | menu bar | JMenuBar | web embedded application control | JApplet | radiobutton | JRadioButton | color settings dialog | JColorChooser | open file dialog | JFileChooser | tool bar | JToolBar | progress barl | JProgressBar | table control | JTable | tree view | JTree | slider control | JSlider | Spinner control | JSpinner |
J2SE applications running on mPeer
The following images illustrate the J2SE applications running on mPeer:

|