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

Motorola iDEN J2ME 開發實戰(三):模擬器多裝置皮膚啟動與命令列完整參數

     編輯:J2ME

批次檔快速啟動(SDK 內建腳本)

SDK 安裝目錄 scripts/ 提供預設批次檔,切換至該目錄執行:

命令列完整參數:任意目錄啟動任意皮膚

假設 SDK 安裝於 D:\MotoSDK,MIDlet 類別於 d:\jdk1.3.0_01\my\HelloMIDlet,當前目錄為後者。

核心啟動模板

java -Djava.library.path=D:\MotoSDK\lib ^
     -classpath D:\MotoSDK\bin\Emulator.jar;D:\MotoSDK\bin\ConfigTool.jar ^
     com.mot.tools.j2me.emulator.Emulator ^
     -classpath .;D:\MotoSDK\lib ^
     [ -deviceFile resources\裝置.props ] ^
     javax.microedition.midlet.AppManager ^
     HelloMIDlet -JSA 1 1

關鍵細節:

  • 第一個 -classpath **有空格** 分隔路徑
  • 第二個 -classpath **無空格** 緊接路徑 (Emulator 類別載入器要求)
  • -JSA 1 1:Java 執行環境參數,保持固定

四大標準皮膚完整指令

REM 1. 通用模擬器 (預設 defaultdevice.props)
java -Djava.library.path=D:\MotoSDK\lib ^
     -classpath D:\MotoSDK\bin\Emulator.jar;D:\MotoSDK\bin\ConfigTool.jar ^
     com.mot.tools.j2me.emulator.Emulator ^
     -classpath .;D:\MotoSDK\lib ^
     javax.microedition.midlet.AppManager ^
     HelloMIDlet -JSA 1 1

REM 2. Motorola i1000
java ... ^
     -deviceFile resources\Motorolai1000.props ^
     ...

REM 3. iDEN 平台
java ... ^
     -deviceFile resources\MotorolaiDENPlatform.props ^
     ...

REM 4. StarTac
java ... ^
     -deviceFile resources\StarTac.props ^
     ...

自訂裝置皮膚

REM 使用絕對路徑 .props 檔
java ... ^
     -deviceFile D:\MyDevices\MyCustomPhone.props ^
     ...

REM 或放入 SDK resources 目錄後使用相對路徑
java ... ^
     -deviceFile resources\MyCustomPhone.props ^
     ...

常見啟動失敗排查

指令啟動裝置皮膚輸出結果
runEmul HelloMIDlet預設通用模擬器通用模擬器截圖
runMotoi1000 HelloMIDletMotorola i1000i1000 皮膚截圖
runMotoiDEN HelloMIDletiDEN 平台通用iDEN 皮膚截圖
runStarTac HelloMIDletStarTac 翻蓋機StarTac 皮膚截圖
runMyDevice HelloMIDlet自訂裝置 (需先建 .props)錯誤:找不到 mydevice.props

自訂裝置描述檔 (.props) 關鍵屬性

# 螢幕尺寸
screen.width=176
screen.height=220
screen.colorDepth=16
screen.isColor=true

# 按鍵映射 (keyCode 對應)
key.UP=38
key.DOWN=40
key.LEFT=37
key.RIGHT=39
key.FIRE=13
key.SOFT_LEFT=...
key.SOFT_RIGHT=...

# 記憶體限制
heap.size=2097152
jar.size.max=65536

# 網路/安全
supports.https=true
supports.socket=true

Configuration Editor GUI 工具可視化編輯此檔,避免手寫錯誤。

結語

掌握命令列完整參數,意味著你能:

  1. 在無 IDE 環境的建構機器上自動化測試多裝置皮膚
  2. 將模擬器整合進 Ant/Make/早期 CI 腳本
  3. 為客戶端定製專屬裝置描述檔,精準模擬目標機型行為
  4. 深入理解 Java 類別載入器、原生庫路徑、模擬器架構的底層運作

這份「原始人」級的命令列技能,是現代 Gradle/Android Emulator/ADB 自動化測試基礎設施的遠古祖先。理解它,才能真正掌握工具鏈而非被工具鏈奴役。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
錯誤訊息原因解決
Error loading property file: resources/defaultdevice.props未將 D:\MotoSDK\bin\resources 複製到當前工作目錄複製整個 resources 目錄到 MIDlet 所在目錄,或使用絕對路徑
NoClassDefFoundError: com/mot/tools/j2me/emulator/Emulator第一個 -classpath 路徑錯誤或缺少 Emulator.jar檢查 SDK 安裝完整性,路徑區分大小寫
MIDlet class not found第二個 -classpath 未包含 MIDlet 類別目錄確保 -classpath .;D:\MotoSDK\lib 中的 . 指向含 package 結構的根目錄