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

Motorola iDEN 平台 J2ME 開發全攻略:從 SDK 安裝到中文支援

     編輯:J2ME

前言與背景

本文基於 Windows 2000、Motorola J2ME SDK Drop 7,介紹 MIDlet 開發全流程。Motorola 率先開放 SDK,支援 iDEN 網絡手機,後續擴展至 GSM。

SDK 獲取與安裝

  1. 註冊 iDEN Developer 會員(免費),下載 Motorola_SDK.exe(~3MB)。
  2. 記錄下載頁提供的安裝密碼。
  3. 安裝前移除舊版,運行安裝程序輸入密碼。
  4. 目錄結構見圖(含 bin、lib、docs、demo 等)。

MIDlet 程序結構

繼承 javax.microedition.midlet.MIDlet,實現三大生命週期方法:

protected void startApp()
protected void pauseApp()
protected void destroyApp(boolean unconditional)

流程圖見文檔。

編寫、編譯、預驗證、運行

HelloMIDlet 範例

import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
public class HelloMIDlet extends MIDlet {
    private Display display; private Form form;
    HelloMIDlet() {
        display = Display.getDisplay(this);
        form = new Form("Hello MIDlet");
        form.append(new StringItem("Hello","MIDlet"));
    }
    protected void startApp() { display.setCurrent(form); }
    protected void pauseApp() {}
    protected void destroyApp(boolean u) {}
}

編譯命令

javac -O -bootclasspath D:\MotoSDK\lib HelloMIDlet.java

預驗證命令

D:\MotoSDK\bin\preverify -classpath D:\MotoSDK\lib;. -d . HelloMIDlet

模擬器運行腳本

  • 通用:runEmul HelloMIDlet
  • i1000 外觀:runMotoi1000 HelloMIDlet
  • iDEN 外觀:runMotoiDEN HelloMIDlet
  • StarTac 外觀:runStarTac HelloMIDlet
  • 自定義裝置:runMyDevice HelloMIDlet(需 .props 文件)

非 demo 目錄下可用完整 java 命令啟動模擬器,指定 -deviceFile 載入裝置配置。

中文支援關鍵:編譯編碼設置

默認編譯中文正常顯示於 UI,但控制台亂碼。修改 compileAll.bat 添加 -encoding ISO8859_1:

javac -encoding ISO8859_1 -O -bootclasspath ...lib %COMPILECLASS%

原理:阻止編譯器將 Big5 碼轉 Unicode 再轉 UTF-8,改為逐字節編碼,KVM 直接輸出即還原 Big5。實測真機上亦需此選項。

開發工具生態

  • IDE:CodeWarrior(SDK 附帶文檔介紹),JBuilder 計劃支援。
  • SDK 內含工具:J2ME 模擬器、Bytecode 驗證器、配置編輯器。

附錄:SDK 內置範例

Bounce、PaddleBall、Scribble、FontDemo、GraphicsDemo、RecordStoreDemo、UDP Tutorial、各類測試用例(Alert、ChoiceGroup、DateField、Form、Gauge、KeyEvents、TextBox、TextField、Ticker)。

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