
J2ME 核心概念解析:MIDlet、MIDlet Suite 與應用程式管理器
在 J2ME 開發中,理解核心術語是入門的關鍵。本文將詳細解釋 MIDlet、MIDlet Suite、JAR、JAD 以及 Java Application Manager 等基本概念,並探討 MIDP 執行環境的組成。
五大核心名詞定義
- MIDlet:可執行應用程式的基本單位。它不僅繼承自
javax.microedition.midlet.MIDlet,還包含所有輔助類別與資源檔案(非 class 檔案)的集合。
- MIDlet Suite:多個 MIDlet 組成的集合,亦稱 MIDP 應用程式套件。關係猶如 Microsoft Office 與 Word、Excel 等組件。部署時(OTA 或非 OTA)皆以 MIDlet Suite 為單位。
- JAR 檔案:封裝 MIDlet Suite 的 ZIP 壓縮檔,包含類別檔與資源檔。
- JAD 描述檔:純文字檔,記錄 MIDlet Suite 的基本資訊(類別名、圖示、程式名、檔案大小、安全權限、憑證等),獨立於 JAR 之外。
- Java Application Manager (JAM/AMS):負責安裝、移除 MIDlet Suite 及管理 MIDlet 生命週期的原生程式(通常以 C/C++ 撰寫)。
應用程式管理器的兩種實作模式
- 背景運作模式:管理器常駐背景,使用者幾乎感知不到其存在。例如 MIDP for Palm 中的 Java HQ (MIDP.prc)。安裝開發工具後可透過 Developer Preference 查看已安裝應用。
- 單一進入點模式:使用者必須先進入管理器介面,再啟動個別 Java 應用。常見於 Motorola、Nokia、Sony Ericsson 手機。

JAR 與 JAD 的關係
理論上 MIDP 應用程式由一個 JAD 與一個 JAR 組成,缺一不可。但實際部署時,某些裝置的管理器不強制要求 JAD,甚至會自行產生。MIDP 1.0 時代 JAD 非必要,但 MIDP 2.0 引入安全機制後,JAD 成為權限驗證的關鍵。
JAR 內部包含:
- 資源檔案:圖片、文字檔等非 class 檔案。規範規定 class 檔不可作為資源使用。
- Manifest 清單檔:內部描述檔,記錄 MIDlet Suite 與 MIDlet 的基本資訊(名稱、版本、作者等)。
MIDP 執行環境組成
根據規範,MIDP 執行環境包含 MIDlet 執行期可存取的所有資源集合:
- CLDC 定義的類別庫
- MIDP 定義的類別庫
- 工具類:開發者自寫類別、標準 Optional Package (WMA、MMAPI)、廠商專屬 API (Nokia UI)、第三方庫 (kXML、kSOAP)。MIDlet 僅能使用同一 JAR 內的類別。
- 資源:同一 JAR 內的非 class 檔案,含 RMS (Record Management System)。
- 權限確認與外部連線能力
- JAD 與 Manifest 的屬性內容
- 平台特有功能
同一 MIDlet Suite 內的 MIDlet 共享同一組執行環境,可互相互動,並可呼叫 CLDC 與 MIDP 類別庫。