在編寫好j2me程式之後,可以使用wtk將編寫好的程式打包成一個.jar的安裝程式,之後就可以將編寫好的程式移植到自己的手機上進行測試。下面是幾個在開發過程中會經常碰到的問題,並給出了自己的經驗解答。
問題1:
如何利用wtk進行打包?
答:首先建立一個project,然後將已在模擬器下面運行通過的程式碼copy到該project的src下,將需要的資源檔copy到相應的res下面,就可以了。
問題2:
為什麼我編寫的程式在模擬器下運行正常,移植到真機上卻不能安裝?
答:這是因為你在打包時的設定不對。各種手機對java me的支援程度不一樣,所以在打包時需要我們根據手機的實際情況進行相應的設定。比如說My Phone是nokia e63的,如果我把程式放到wtk下進行預設打包時無法安裝的。但是如果在打擊setting之後再target platfrom 下選擇jiwi之後再打包就可以安裝了。
問題3:
打包時碰到中文亂碼問題如何解決?
答:
由於wtk預設的設定,如果在原始碼中有中文注釋,以及中文字串,會發現出現亂碼問題,這是因為預設的支援的是英語編碼。其中如果有中文注釋,可能還會導致編譯出錯,因為編譯器對中文解析不正確會導致後面部分代碼無法編譯。可以在wtk安裝目錄下找到wtklib在windows檔案夾下面的ktool.properties的末尾添加如下兩行文字:
microedition.encoding=UTF-8
javac.encoding=UTF-8
這樣之後編譯就不會出錯,中文也不會顯示為亂碼了。
問題4:
如下的代碼為什麼會出錯?
player=Manager.createPlayer("file:///root1/3.mp3");
或者:
InputStream inputStream=getClass().getResourceAsStream("/1.mp3");
player=Manager.CreatePlayer(inputstream,"audio/mpeg");
player.releazie();
答:這是因為sun的模擬器不支援MP3檔案的播放,可以先通過查詢器支援的audio檔案來確定是不是因為系統不支援而出錯,以免糾結以為是代碼出錯。如果碰到這種情況,可以將編譯後的程式打包到真機上進行測試。或者下載別的模擬器,如索愛的或者nokia提供的。