新手入門:J2ME基本概念解析

來源:互聯網
上載者:User
概念

  J2ME,即Java 2 Micro Edition,是SUN公司推出的在行動裝置上啟動並執行微型版Java平台,常見的行動裝置有手機,PDA,電子詞典,以及各式各樣的資訊終端如機頂盒等等。

  由於移動終端的類型成千上萬,而且計算能力差異非常大,不可能像案頭系統那樣僅僅兩三個版本的JVM即可滿足Windows,Linux和Unix系統,因此,J2ME不是一個簡單的微型版的JVM。為了滿足千差萬別的行動裝置的需求,SUN定義了一系列的針對不同類型裝置的規範,因此,J2ME平台便是由許多的規範組成的集合。

  最重要的移動終端當然是手機了,因此,我們主要討論手機相關的J2ME規範。

  Configuration

  SUN把不同的裝置按照計算能力分為CLDC(Connected Limited Device Configuration)和CDC(Connected Device Configuration)兩大類,這兩個Configuration是針對裝置軟硬體環境嚴格定義的,比如CLDC1.0定義了記憶體大小為64-512k,任何裝置如果支援CLDC1.0,就必須嚴格滿足定義,不能有可選的或者含糊的功能。

  CLDC1.0是針對計算能力非常有限的裝置定義的,只支援整數運算,不支援浮點運算,早期的Java手機大部分都支援CLDC1.0,如Nokia 3650,Siemens 6688i。

  CLDC1.1則增加了浮點運算,因此,在支援CLDC1.1的裝置上,可以使用float和double類型的變數。現在的Java手機很多都能支援CLDC1.1,如Nokia 9500,Siemens S65。

  CDC則是針對計算能力比較強的裝置定義的,如PPC等,CDC平台的JVM基本上和案頭的JVM很接近了,只是可以使用的Package大大少於J2SE的包。支援CDC的非常高端的Java手機也會很快上市。

  Profile 和Configuration相比,Profile更多是針對軟體介面的定義,Profile有必須實現的,也有可選的功能,因此,Profile更靈活。

  最重要的Profile當然是MIDP(Micro Information Device Profile),MIDP定義了能在Java手機上啟動並執行Java程式的規範,包括應用程式生命週期,各種UI介面組件,支援Record儲存和Http串連等等,符合MIDP規範的Java小程式被稱為MIDlet,可以直接通過無線網路下載到手機並運行。

  早期的MIDP1.0規範使我們能在手機上運行有UI介面的Java程式,但是MIDP1.0對遊戲的支援不夠,必須自己實現許多代碼,因此,MIDP2.0規範大大加強了對遊戲開發的支援,使開發人員能編寫更少的代碼來建立遊戲。

  MIDP規範的圖形介面基本上都是獨立於J2SE的AWT和Swing組件,因為目前手機的計算能力還比較有限,但是,隨著手機的CPU越來越快,使得AWT和Swing移植到手機上也將成為可能,因此,基於CDC規範的最新的PBP 1.0(Personal Basic Profile)和PP 1.0(Personal Profile)提供了部分AWT和Swing的支援,目前,部分高端PDA已經可以運行PBP和PP的Java程式了。可以預見,將來大部分的AWT和Swing組件都能移植到手機上。

  前面已經說過,和Configuration相比,Profile有許多可選包,比較實用的Profile還有在JSR135定義的MMAPI(Mobile Media API),實現多媒體播放功能;在JSR184定義的M3G API(Mobile 3D Graphics API),實現3D功能;在JSR120定義的WMA(Wireless Messaging API),實現短訊息收發。如果你的手機支援某一Profile,如M3G,那麼便可以在MIDlet中使用M3G的3D API實現3D遊戲。

  如果你準備在手機上開發J2ME應用,選擇手機時就需要注意廠商支援的CLDC規範,支援MIDP1.0還是2.0,是否支援MMAPI,M3G,WMA等可選包。

  Profile雖然定義了Java API介面,但是底層如何?是由各廠商自己決定的,如M3G定義了3D介面,但是底層實現既可以使用硬體加速,也可以由C程式類比,或者部分由硬體實現,部分由軟體實現。

  比J2ME更精簡的Java平台被SUN稱為JavaCard,運行在信用卡等晶片中,實現電子支付等功能,目前SUN還沒有把JavaCard併入J2ME平台。



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.