999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于MIDP2.0的坦克大戰手機游戲的設計

2010-01-01 00:00:00王卉玲勞漢生
經濟師 2010年6期

摘 要:隨著無線網絡技術的不斷發展,手機及其他無線設備的普及將成為一種趨勢。由于的手機的攜帶方便,手機游戲又具有娛樂的功能,和J2ME技術的跨平臺特性,使得越來越多的國內外廠商開始開發基于J2ME平臺的無線應用服務。文章著眼于J2ME技術在手機游戲開發上的應用,在結合實際的開發經驗與一些MIDP2.0新技術的基礎上,講述一款自主研發的基于MIDP2.0的坦克大戰手機游戲設計。

關鍵詞:J2ME 手機游戲 MIDP2.0 無線設備

中圖分類號:F062.5文獻標識碼:A

文章編號:1004-4914(2010)06-052-03

一、引言

隨著人們生活水平的不斷提高,手機用戶的數量也在不斷上升,而且手機的功能越來越豐富,也促進了手機游戲產業的不斷發展。在市場上,手機游戲的內容大多相近,但其中也不泛有經典之作,它們的盈利方式主要是涉及面廣,盡管手機游戲的費用不高,但是巨大的使用量將使得這個市場商機很大。種種的數據調查顯示前中國手機游戲市場一片繁榮,然而手機游戲大多來自國外,這對國內的手機游戲開發并非長遠之計。

隨著無線應用與嵌入式系統的愈來愈受到人們的重視,SUN公司推出了J2ME(Java 2 Platform, Micro Edition)來迎合這一趨勢,它把Java平臺的以網絡為中心和平臺不可知論的特性移植到有限存儲器和有限處理器的設備中,這些設備具有16位或32位處理器和總量不少于大約128K的存儲器;而MIDP2.0的新特性對手機游戲的開發提供了許多新的支持技術,使得J2ME手機游戲開發的難度大大下降,簡化了設計的流程,也很大程度的促進了J2ME應用于手機游戲的發展。

由于Java語言相當的普及,對于有Java語言基礎的人來說,J2ME技術的門檻較低,開發速度較快。J2ME技術擁有強大的移植性,可以經過簡單的修改后,在不同廠商的手機上運行,現在在市場上的主要廠商有諾基亞、摩托羅拉、索愛等,它們之間在市場上進行著激烈的競爭,進而也促進了J2ME技術的快速發展。本文的寫作目的就是通過使用J2ME游戲開發技術來開發一個基于Nokia S60的手機游戲,從而展現J2ME技術在手機游戲開發方面的優勢。

二、J2ME體系結構和MIDP2.0新技術

(一)J2ME體系結構

Java自1995年發明以來以發生了很大的變化,從最早的為基于瀏覽器中運行的Applet的編程,到Servlet/EJB的Server編程,再到現在的MIDlet為無線信息設備的編程。它已發展成為為開發者提供一端到端編程開發的平臺,即我們常說的J2SE/J2EE/J2ME,Java的三個平臺(fig1)。由于無線編程有其完全不同于傳統編程的特殊性,比如:運行設備的多樣性,設備處理能力不如服務器和微機,用戶界面的差異性等。另外在加上無線技術的飛速發展,使得J2ME的體系架構有者完全不同于J2SE/J2EE的特點。

由于嵌入式設備的種類太多樣,沒有統一的規范,于是J2ME定義了一種靈活的層次規范結構來規范眾多的移動設備,不同層次的規范相互協作來提供一個完整的移動Java平臺。J2ME依照各種設備的資源特性,將J2ME技術架構分為簡表(Profile),配置(Configuration)和Java虛擬機(Java Virtual Machine)三層,如圖1所示:

1.簡表層:簡表層定義了在特定的設備上可用的應用程序編程接口(API)的最小集。它在一個特定的配置上面實現,應用程序是針對特定的簡表編寫的,因此可以移植到支持該簡表的任何設備上。SUN公司推出兩種可用的參考J2ME簡表:基礎簡表與MIDP。基礎簡表主要用于CDC配置。MIDP連同功能較低的CLDC配置一起為開發移動設備應用程序提供了完整的Java平臺。

2.配置層:面對的是大量各種不同的小型嵌入式設備,J2ME將這些設備進行分類,將一些共性提取出來形成適合于某范疇中設備可用的規范,稱為“配置”。配置規范定義了硬件所必須具備的能力。目前J2ME可用的配置有兩種:CDC(Connected Device Configuration,連接設備配置)和CLDC(Connected Limited Device Configuration,連接有限設備配置)。CDC應用于相對內存量較大,更強處理器的移動設備。CLDC主要針對些資源有限的嵌入式設備。

3.Java虛擬機層:這一層是針對設備本地操作系統定制的Java虛擬機的實現,支持特定的J2ME配置,就像使用所有Java技術一樣,其核心也在一種虛擬機中。

(二)MIDP2.0新技術

在MIDP1.0中這些功能包括:應用的下載、應用的生命周期、端到端的傳輸(http)、網絡聯結、數據庫存儲、計時器和用戶界面;通過用戶對MIDPv1.0的使用經驗和反饋,MIDP2.0的專家組在MIDP1.0APIs的基礎上又新加了下面的APIs:

1.應用的下載和計費。

2.端到端的安全傳輸(https)。

3.應用的數字簽名和域的安全模式。

4.MIDlet的push注冊(server push model)。

5.聲音。

(三)MIDP2.0的安全機制

Java語言作為以種網絡編程語言,它具有很多特點來滿足網絡編程的需求,其中最為人們所津津樂道的是它的遍寫一次到處運行,以及它的安全性。特別是它的安全性,從它的發明到現在的7年的時間已經為無數的事實所證明。Java語言的安全性,安全機制也有它發展的過程,下面我們簡單介紹以下Java的安全機制。

1.Java1.0的沙箱機制:

圖2 Java1.0安全的沙箱機制

2.Java1.1的可信任代碼的安全機制:

圖3 可信任代碼的安全機制

3.Java1.2/2的域安全機制:

圖4 Java1.2/2的域安全機制

三、坦克大戰手機游戲的設計流程和設計思路

(一)坦克大戰手機游戲的設計流程

1.游戲開發的流程。手機游戲開發不同于一般應用程序開發,它受到手機本身的限制,開發人員使用現有的技術去實現,采用合理的開發流程非常重要,下面來介紹下手機游戲的簡要開發流程。

(1)提出方案:創意的產生。

(2)可行性分析:市場商業評估與開發難度評估。

(3)概要設計:策劃具體的游戲方案。

(4)詳細設計:包括框架設計、圖像設計、具體設計、代碼實現、初步測試等。

(5)品質管理:跟蹤質量評估,發布最終穩定版產品。

2.游戲開發的詳細設計流程。在設計過程中,程序采用面向對象的設計方法,對游戲中的所有物體賦于對象的屬性。游戲的主要任務是在DemoCanvas類里實現的,該類聯系著與其他類的響應。游戲運行后,首先在DemoCanvas類里初始化并啟動一個線程,由線程實時響應按鍵狀態,對屏幕進行重繪并產生一個菜單選項,允許用戶進行菜單選擇,根據不同的選擇可以產生不同的結果,選擇開始游戲后,游戲啟動接著載入玩家坦克圖片,敵方坦克圖片,爆炸圖片以及各種背景物體圖片,從外部文本文件載入地圖,然后產生玩家坦克與敵方坦克,最后對背景的所有物體進行繪圖。在主程序運行的線程中將以一定的頻率對屏幕背景進行重繪,實時反映整個游戲的進行狀態。玩家控制坦克在主線程中運行,隨屏幕刷新的頻率而前進。敵方坦克則由計算機控制,在游戲開始時逐漸增加線程,每增加一個敵方坦克就增加一個新線程,但屏幕上最多有兩輛敵方坦克,每輛敵方坦克是一個線程,一旦敵方坦克線程數滿達到最大值,就不允許敵人坦克再繼續出現在屏幕上。每輛坦克自產生之時起就只將擁有一發子彈,而且每發子彈均是一個線程,發生碰撞后并不結束子彈對象,只是將其線程終止。主程序在運行的過程中,將實時的監測若干事件,如:玩家坦克是否被敵方坦克消滅,敵方坦克是否被消滅,且其剩余數量是否已經為零,玩家是否在游戲中獲勝,各對象之間是否發生了碰撞等,并對屏幕進行實時重繪,由程序進入相關的分支執行相應的響應代碼,是否結束游戲等。以便程序進入相關的分支執行相關的代碼處理,結束游戲等。主程序流程如圖5所示。

(二)坦克大戰手機游戲的設計思路

1.坦克控制的設計思路。在游戲中坦克分玩家坦克與敵方坦克,對坦克的邏輯設計讀者可以先參閱圖6,對玩家坦克的設計引入了GameCanvas類,GameCanvas類提供getKeyStates方法獲取當前鍵盤上按鍵的信息。getKeyStates方法將以bit的形式返回鍵盤上按下鍵與釋放鍵的狀態,當鍵盤按下鍵時返回bit為1,當鍵盤釋放鍵時返回bit為0。這里只需要getKeyStates方法的一個返回值就可以返回所有鍵的狀態。同時,getKeyStates方法的這個機制也可以檢測同時按下幾個鍵的狀態,并能保證快速的按鍵和釋放也會被響應。

2.子彈智能運行的設計思路。子彈的行為是雙方坦克的共同行為,每一輛坦克都有它自己的一個子彈,這個子彈在坦克被產生時就一直存在,在坦克未發射子彈前,其圖像被設置為不可見,只有當坦克發射了子彈時,子彈的圖像才被設置為可見,并且該子彈只有直至和障礙物發生碰撞或坦克被消滅時才消失,子彈的再次出現只是在屏幕上重新置于坦克的炮口,并使其顯示出來,向坦克前進的方向前進,對于子彈的邏輯設計讀者可參閱圖7。

四、結束語

J2ME是一種適合于手機游戲開發的技術,它具有較強的移植性、入門技術門檻低和開發速度快等優勢,而MIDP2.0規范提供的新特性增強了對手機游戲開發的支持,降低開發人員的開發難度,促進了J2ME應用于手機游戲的發展。本文是針對Nokia S60平臺開發一個完整的坦克大戰手機游戲,游戲的開發使用了許多復雜的技術,實現了傳統游戲的大部分功能,發揮了J2ME技術在手機游戲開發上的優勢。

參考文獻:

1.http://java.sun.com/j2me

2.http://java.sun.com/Products/j2mewtoolkit/index.html

3.JSR-000139 Connected Limited Device Configuration 1.1

4.(美)Bruce Eckel.京京工作室譯.Java.編程思想.北京:機械工業出版社,1999

5.(美)Chuck Cavaness,Geoff Friesen,Brian Keeton.師夷工作室譯.Java完全探索(第二版).北京:中國青年出版社,2001

6.黃聰明.JAVA移動通信程序設計J2MEMIDP.北京:清華大學出版社,2002

7.洪維恩.Java2面向對象程序設計.北京:中國鐵道出版社,2002

8.盧軍.J2ME應用程序開發手機、PDA程序開發捷徑.北京:中國鐵道出版社,2002

9.孫希,俞建新.Java虛擬機新技術探討.計算機應用,2002(8)

(作者簡介:王卉玲,中山中專教師,碩士研究生;勞漢生,中山火炬職業技術學院教授、博士生導師 廣東中山 528400)

(責編:賈偉)

主站蜘蛛池模板: 精品一区二区三区水蜜桃| 沈阳少妇高潮在线| 美女无遮挡拍拍拍免费视频| 亚洲国产理论片在线播放| 国产精品美女免费视频大全| 亚洲无码电影| 国产91视频免费| 久久综合久久鬼| 再看日本中文字幕在线观看| 手机在线免费毛片| 久久先锋资源| 亚洲国产日韩一区| 免费A级毛片无码免费视频| 亚洲精品你懂的| 重口调教一区二区视频| 91口爆吞精国产对白第三集| 97国产在线视频| 成人国产三级在线播放| 国产99精品久久| 亚洲国产清纯| 毛片久久久| 日韩不卡高清视频| 免费一级毛片完整版在线看| 国产精品自在拍首页视频8| 色综合久久88| 国产a网站| 亚洲AV人人澡人人双人| a欧美在线| 精品一区二区无码av| 不卡无码h在线观看| 亚洲国产成人精品无码区性色| 亚洲一区二区在线无码| 国产视频欧美| 色哟哟国产成人精品| 97在线公开视频| 日本国产精品一区久久久| 欧美成人午夜在线全部免费| 在线亚洲小视频| 国产精品男人的天堂| 日韩一级毛一欧美一国产| 国产网站黄| 91精品aⅴ无码中文字字幕蜜桃 | 欧洲日本亚洲中文字幕| 无码人妻热线精品视频| 久久午夜影院| 国产高清在线丝袜精品一区| 免费看美女自慰的网站| 亚洲av无码成人专区| 露脸一二三区国语对白| 呦女亚洲一区精品| 蜜芽国产尤物av尤物在线看| 浮力影院国产第一页| 国产剧情一区二区| 成年av福利永久免费观看| 九九精品在线观看| 伊人久久青草青青综合| 日韩欧美色综合| 在线看国产精品| 一级爆乳无码av| 激情乱人伦| 在线国产91| 国产www网站| 亚洲欧美国产五月天综合| 国产精品久久久久久搜索| 亚洲人成网站在线观看播放不卡| 99在线观看视频免费| 久久久亚洲色| 久久99久久无码毛片一区二区| 区国产精品搜索视频| 欧美日韩成人在线观看| 久久久久无码国产精品不卡| 99久久国产自偷自偷免费一区| 亚洲欧洲自拍拍偷午夜色无码| 丁香五月激情图片| 国产91在线|日本| 亚洲swag精品自拍一区| 国产黄色视频综合| 亚洲精品亚洲人成在线| 在线观看无码av五月花| 成年人福利视频| 久久久久久久久久国产精品| 中文字幕自拍偷拍|