首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 程式設計入門

J2ME MIDP 開發無線應用入門:架構、生命週期與 UI 元件

     編輯:Java 程式設計入門

前言

J2ME (Java 2 Micro Edition) 透過 Configuration (CLDC) 定義 JVM/核心庫子集,搭配 Profile (MIDP) 提供裝置專用 API,構建行動裝置開發平台。本文以 HelloMIDlet 為例,解析 MIDP 應用結構、生命週期、事件處理與 UI 元件分類。

MIDP 應用程式結構

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class HelloJ2ME extends MIDlet implements CommandListener {
    private Display display;
    private Form form;
    private Command exitCmd;

    public HelloJ2ME() {
        display = Display.getDisplay(this);
        form = new Form("Hello J2ME");
        form.append("Hello World!");
        exitCmd = new Command("Exit", Command.EXIT, 1);
        form.addCommand(exitCmd);
        form.setCommandListener(this);
    }

    protected void startApp() { display.setCurrent(form); }
    protected void pauseApp() { }
    protected void destroyApp(boolean unconditional) { notifyDestroyed(); }
    public void commandAction(Command c, Displayable d) {
        if (c == exitCmd) destroyApp(true);
    }
}

MIDlet 生命週期三大抽象方法

方法觸發時機用途
startApp()應用啟動、從暫停恢復初始化 UI、取得資源,**非**僅首次啟動呼叫
pauseApp()來電、切換應用、系統事件釋放資源、儲存狀態
destroyApp(boolean)使用者結束、系統回收清理資源、關閉連線,**僅呼叫一次**

輔助通知方法:notifyDestroyed()、notifyPaused()、resumeRequest()、getAppProperty()

UI 元件三大家族 (lcdui 套件)

1. Screen 元件 (繼承 Screen)

  • Form:容器,可放入 Item 元件
  • Alert:對話框、提示
  • List:單選/多選清單
  • TextBox:多行文字輸入

2. Item 元件 (繼承 Item,置於 Form 內)

  • TextField、ChoiceGroup、DateField、Gauge、ImageItem、StringItem

3. Miscellaneous Displayable 元件

  • Command:軟鍵功能鍵
  • Ticker:跑馬燈文字
  • Graphics:低階繪圖
  • Choice 介面

Display 管理器

  • 每個 MIDlet 擁有單一 Display 實例:Display.getDisplay(this)
  • setCurrent(Displayable) 切換畫面、getCurrent() 取得當前畫面
  • 查詢裝置能力:isColor()、numColors()、getWidth/Height()

開發限制與優化重點

  1. 精簡類庫:無 Reflection、JNI、Finalization
  2. 記憶體極限:動態堆疊常 < 100KB,演算法必須節省記憶體
  3. 網路限制:頻寬低、延遲高、連線不穩,需非同步、斷點續傳設計
  4. 封裝格式:.jar + .jad (描述檔) 透過 OTA 下載安裝

總結

掌握 MIDlet 生命週期、Command/Listener 事件模型、三大 UI 家族與 Display 管理,即可開發基本 MIDP 應用。實務上仍需針對目標手機測試相容性,善用模擬器與真機除錯。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved