J2ME 開發最讓人頭大的就是「模擬器正常、真機掛掉」。本文總結實戰中遇到的 10 大核心問題,按發生頻率排序,附帶排查思路與預防措施,建議收藏作發布前自查清單。
res/ 但忘在 JAD MIDlet-Jar-URL 對應的 JAR 中打包,或 Ant/構建腳本漏包。bg.PNG;Linux 內核手機區分大小寫,createImage("/bg.png") 找不到文件拋 IOException。public 構造函數,包私有/protected 會實例化失敗。public MyMidlet()。System.gc()、圖片複用、避免大局部變量。Exception 未 try-catch,系統直接殺進程。startApp() 中載入所有關卡圖、音效,超過啟動超時限制被看門狗殺掉。JSR 184/JSR 239 等可選包,目標手機未實現,ClassNotFoundException 或 NoClassDefFoundError。System.getProperty("microedition.profiles") 和 JSR 屬性動態檢測,優雅降級。GameCanvas, Sprite) 卻部署到 MIDP 1.0 手機。MIDlet-Jar-Size 必須準確。資源入包名小寫,構造公共防中文。
內存分批捕異常,啟動輕量查版本。
JSR動態查支持,JAD配齊裝真機。