程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2ME >> J2ME手機游戲開發日記1

J2ME手機游戲開發日記1

編輯: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規范讀讀,地址是http://jcp.org

第一天的工作:
有點亂,因為也是剛剛接觸這個東東,一點實際經驗都沒有(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吧。另外也說一下大概的J2ME手機游戲的結構。

附:簡單的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();

}

}




  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved