J2ME手游开发日记
J2ME新手,做了一個游戲的項目,其中有些體會,覺得有些東西還是可以拿出來和大家分享。說錯了還請包涵。
開發環境:
windows2000+JBuilder X+semc_j2me_sdk_2_1_4_beta
從來沒有接觸過這個方面,因為小組一個項目要開始學J2ME,看了兩天的書,發現其實JDK還是很簡單的??偣惨簿湍菐讉€類。只是如果要考慮到資源和性能的最佳優化的話,算法和數據結構的要求比較高。
先說手游拍賣環境的搭建:
1、windows2000(這個不用說了)
2、JBuilder X(其他版本的JBuilder其實應該也沒問題,只是我機子只有512,跑9或者2005的話有點郁悶)
3、因為是針對索愛的K700C開發的項目,所以JDK使用索愛的JDK
4、JBuilder中使用手機的JDK,步驟為Tools-Configure JDKs-Add
開發J2ME的話首先了解J2ME的結構層次,看了很多介紹性的文檔順序也大概都是這樣子,網上的這方面的介紹浩如煙海,我在此也不贅述了,只是說說我的理解吧。
J2ME的核心是Configuration(CLDC、CDC),在這之上是Profile(MIDP),而我們的手機開發也大部分是在Profile上,也就是說CLDC+MIDP。
如果你要詳細了解J2ME一路發展的歷史,可以下載JSR規范讀讀,地址是
第一天的工作:
有點亂,因為也是剛剛接觸這個東東,一點實際經驗都沒有(java也只是看的零零碎碎的)。拿著本書在實驗室泡了整整一天,大概了解了一下程序的基本結構。(強烈推薦sun出版的《J2ME無線設備程序設計》第二版,看得非常之痛快)。
程序中繼承了MIDlet類的類可以理解為程序的入口。相當于win32中的winmain,運行的話都是從這個開始。
MIDlet的結構為
public class GameMIDlet extends MIDlet {
public GameMIDlet() {} //構造函數,參數必須為空
public void startApp() //程序開始(或者被系統中斷之后再回到程序)
public void pauseApp() //程序暫停(處理一些暫停的清理工作,但是要注意系統遇到來電或者此類的事件時并非是將程序暫停,而是整個掛起,正常后又開始執行startAPP())
public void destroyApp(boolean con) //銷毀工作。}
今天就寫這么多了,明天說一下displayable和Graphics吧。另外也說一下大概的淘寶號手機游戲的結構。
附:簡單的MIDlet
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class HelloMIDlet extends MIDlet implements CommandListener
{
private Display display;
private Command exitCommand;
private TextBox text;
public HelloMIDlet() {
display = Display.getDisplay(this);
exitCommand = new Command("離開", Command.BACK, 1);
text = new TextBox("Hello App", "Welcome!", 256, 0);
text.addCommand(exitCommand);
text.setCommandListener(this);
}
public void startApp() {
display.setCurrent(text);
}
public void pauseApp() {}
public void destroyApp(boolean unconditional) {}
public void commandAction(Command c, Displayable s) {
if (c == exitCommand) {
destroyApp(false);
notifyDestroyed();
}
}
總結
以上是生活随笔為你收集整理的J2ME手游开发日记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 再观手游市场新风口-二次元游戏
- 下一篇: 当Project xCloud落地移动终