J2ME
學習總結(一)
本人學習 J2ME 的原因是畢業設計課題的需要,要開發一個基于 J2ME 的移動設備 3D 游戲,需要從基礎一步一步學習。
前言
????????? 如果大家沒有接觸過無線移動開發,可能想到要在手機運行自己寫的程序或者游戲,一定很難;
????????? 不過可以放心,這些東西一旦跟 java 扯上關系,那問題就好像沒有那么復雜了;
????????? 今天就給大家介紹 j2me 的一些基本知識
J2ME
技術概述
????????? J2ME 是 SUN 公司針對嵌入式、消費類電子產品推出的開發平臺,與 J2SE 和 J2EE 共同組成 Java 技術的三個重要的分支。
????????? J2ME 平臺是由配置( Configuration )和簡表( Profile )構成的。配置是提供給最大范圍設備使用的最小類庫集合,譬如 IO ,支持的數據類型等等,在配置中同時包含 Java 虛擬機。簡表是針對一系列設備提供的開發包集合。
????????? J2ME 中有兩個最主要的配置,分別是 Connected Limited Devices Configuration ( CLDC )和 Connected Devices Configuration ( CDC )。 CLDC 主要針對那些資源非常受限的設備比如手機、 PDA 、雙工尋呼機等。而 CDC 主要面對那些家電產品,比如機頂盒、汽車導航系統等。
????????? 簡表是以配置為基礎的
????????? 例如 Mobile Information Devices Profile ( MIDP )就是 CLDC 上層的重要簡表。
????????? 在 MIDP 中定義了一種新的應用程序模型 MIDlet ,它是被 Application Management Software ( AMS )管理的。 AMS 負責 MIDlet 的安裝、下載、運行和刪除等操作。
????????? 在被 AMS 管理的同時, MIDlet 可以和應用管理軟件通信通知應用管理軟件自己狀態的變化,通常是通過方法 notifyDestroyed() 和 notifyPaused() 實現的
????????? MIDlet 有三個狀態,分別是 pause 、 active 和 destroyed 。
J2ME
的應用
目前
J2ME
主要應用在移動電話上,主要是游戲開發。
事實上,
J2ME
能夠做的內容有很多,絕對不應該局限于游戲。
SonyEricsson , Nokia 等廠商都把重點轉向了企業和產品應用層面,特別是與 J2EE 的
結合,將會一個完美的亮點;
另外 Mobile Java 3D 作為一個獨立的領域也正在受到大家的廣泛歡迎和關注。
我現在的畢業設計就是 Mobile Java 3D
開發環境搭建
????????? 下載相關軟件
???????
?????J2SE
:
JDK 1.4 or later
,
http://java.sun.com
無線開發包
:
WTK 2.2 or later
,
http://java.sun.com
?
????? IDE
工具
:
Eclipse 3.1
,
http://www.eclipse.org
????? ???? 開發插件: Eclipse Me 1.2
????? ???? 其他可選包: Nokia SDK 等
?????????? 注意:下載開發插件的時候選擇與 Eclipse 匹配的版本,當前使用的
???????????????? 版本為 1.2 ,支持 Eclipse 3.x
????????? 搭建過程
第一步 安裝 JDK
第二步 安裝 WTK ,雙擊安裝包,下一步到底
第三步 安裝 Eclipse
第四步 安裝 Eclipse Me 插件
??????????? 安裝 Eclipse 插件方式很多,可以直接更新安裝,也可以直接
??????????? 下載插件安裝包安裝,我們采用第二種方式:分別拷貝 features
??????????? 和 plugins 的文件到 Eclipse 對應的目錄下,刪除 Eclipse 安裝目錄
??????????? 對應的 configuration 下的 org.eclipse.update 文件夾,然后再啟動
??????????? Eclipse 即可
????????? 安裝完成后,啟動 Eclipse, 在菜單欄 window/preferences 可以看到:
?
????????? 然后選擇 platform Components 項添加 WTK
????????? 選擇 WTK 安裝目錄
????????? 安裝完畢,新建一個 J2ME 項目測試一下
?????????
新建一個
Midlet
程序
?????????
運行
????????? 運行結果出現默認手機模樣(左圖)
????????? 黑色部分為 Midlet 框架部分,插件自動生成,我們只需要添加少量代碼
import javax.microedition.midlet.*;
public class HelloWorld extends MIDlet {
????
private? Display dispaly = null;
?? ??public HelloWorld(){
??????
?? display = Display.getDisplay(this);
???? }
?????? protected void startApp() throws MIDletStateChangeException {
?
???
?????????????
Form form = new Form(
“
Hello world!
”
)? ;
?????????
???? display.setCurrent(form);
?????? }
?????? protected void pauseApp() {}
?????? protected void destroyApp(boolean arg0) throws MIDletStateChangeException {}
}
MIDP2.0
常用
API
介紹
????待續......