CDC和CLDC僅僅是對各類設備中最具共性的配置提供了基本的功能集合。但是,實際應用中,不同的設備之前存在著很大的差異。因此,我們在Configuration的基礎上,又提出了Profile的概念。Profile規定的內容,是針對某一類設備所制訂的規范和API,有了Profile以后,才真正有了可以建立一個可運行J2ME應用程序的完整環境。移動信息設備Profile(Mobile Information Device Profile或MIDP)以CLDC為基礎,它是第一個制訂完成Profile,也是第一個可供使用的J2ME應用程序運行環境。本文中的內容也將主要圍繞MIDP來展開。
J2ME能為開發者和用戶提供什么功能? 如前所述,MIDP出現最早,也發展最快,在此我們也僅討論J2ME MIDP應用程序的開發。2002年10月,JCP(Java Community Process,參見http://www.jcp.org)推出了MIDP2.0的規范,和MIDP1.0相比,它大大加強了對用戶界面、多媒體和游戲功能、網絡連接功能的支持,同時將OTA應用程序下載包括到規范中來,另外還為無線信息設備提供了端到端(end-to-end)的安全機制。
為了支持對聲音的處理(例如播放WAV文件),MIDP2.0中增加了一個可選包ABB(Audio Building Block)。在以前,ABB只包含在Mobile Media API(MMAPI)中,現在將其納入到MIDP中來,開發者就可以不用依靠于MMAPI了。當然,假如使用了MMAPI,可以為移動設備開發更多的功能,比如可以在PDA上播放視頻流等等。
支持Over-the-air (OTA) Provisioning是MIDP2.0的一個重要的新特點,它使得用戶能夠動態地部署和更新移動設備上的應用程序。新版的MIDP規范中規定了如何在移動設備上發現、安裝、更新和刪除MIDlet套件;同時,提供給用程序下載的服務提供商還能夠判定該MIDlet套件是否能夠運行在申請下載的設備上,并且從設備上獲取安裝、更新和刪除的信息。MIDP OTA provisioning模型為移動服務提供商提供了單一、標準的部署MIDP應用程序的途徑。該模型已經被眾多技術領先的移動設備制造商和服務提供商所采納。
在這種情況下,越來越多的移動設備制造商和開發者意識到,需要建立一個標準來保證J2ME應用程序的跨平臺性?!稛o線領域的JAVA技術規范》(Java Technology for the Wireless Industry即JTWI,JSR185)正是為了完成這個使命而出現的。來自Motorola,、Nokia、Sony和Sun等公司的技術專家于2002年底開始了該規范的制訂,并將于2003年中期正式推出。JTWI并沒有定義新的API,而是為已有的J2ME規范(例如CLDC、MIDP、MMAPI等)創建了新的手持設備的Profile,使它們能有效地集成在一起,為在手機以及其他移動設備上實現“端到端的解決方案”提供一個完整的JAVA運行環境。圖3為JSR185中規定的在手機軟件堆棧中各個組件的關系示意圖。 圖3