Java ME是一种高度优化的Java运行环境,它将Java语言的与平台无关的特性移植到小型电子设备上,允许移动无线设备之间共享应用程序。
J2ME是Sun公司为嵌入式开发所定义的一个框架,由一系列标准的规范组成。所以J2ME是一系列技术规范的总称,而不是单一的规范。
J2ME架构
JAVA ME的架构分为Configuration、Profile和Optional Packages(可选包)。它们的组合取舍形成了具体的运行环境。
Configuration配置主要是对设备纵向的分类,分类依据包括存储和处理能力,其中定义了虚拟机特性和基本的类库。已经标准化的Configuration有- Connected Limited Device Configuration(CLDC)和Connected Device Configuration(CDC)。
Profile简表建立在Configuration基础之上,一起构成了完整的运行环境。它对设备横向分类,针对特定领域细分市场,内容主要包括特定用途的类库和API
概述
J2ME使用配置(Configuration)和简表(Profile)定制JRE,一个完整的JRE由配置和简表组成,配置决定了所使用的JVM(可能是CVM或KVM),而简表通过定义特定的类来为应用程序提供功能上的支持,一个简表定义了设备所提供的API集合MIDP是Profile其中的一类描述,CLDC是Configuration其中的一类配置
sun wtk
WTK 的全称是Sun J2ME Wireless Toolkit —— Sun的无线开发工具包wtk2.0,便是常用的一款J2ME SDK。这一工具包的设计目的是为了帮助开发人员简化j2me的开发过程。使用其中的工具可以开发与 Java Technology for the Wireless Industry (JTWI, JSR 185) 规范兼容的设备上运行的j2me 应用程序。该工具箱包含了完整的生成工具、实用程序以及设备仿真器。由于WTK自身并没有附带Java的运行环境JDK,所以,在WTK安装之前你需要安装自己的JDK
Sun JavaTM Wireless Toolkit for CLDC 是MIDP的基础,CLDC(Connected Limited Device Configuration)对MIDP(Mobile Information Device Profile)是一个基础与上层建筑的关系,但它还支持许多可选包,是一个功能强大的开发工具包。CLDC 和 MIDP的开发包当然是集成在WTK里了,WTK是开发环境,而不是运行环境。cldc配置解决了以下问题:java语言和虚拟机特征;核心java类库(java.long.*,java.util.*);输入输出;网络;安全;国际化。cldc不解决下列领域的问题,这些特征由位于cldc之上的简表(如MIDP)实现:应用程序的生存周期管理;用户界面;事件处理;高级应用模型(用户和应用的交互)。
ORACLE/sun WTK下载
https://www.oracle.com/java/technologies//java-archive-downloads-javame-downloads.html
目前,J2ME Wireless Toolkit共分3个版本:1.0.4、2.0和2.1。其中,1.0.4版只能开发MIDP 1.0程序,2.0版可以开发MIDP 2.0应用程序,2.1版则可以同时开发MIDP 1.0、JTWI、自定义等3种环境。需要注意的是,并非版本越高越好,必须视需求不同而选择适当的版本,才能开发出可以在真机上运行的MIDP应用程序。2.2版中,WTK全面的支持JTWI规范。具体的说,即MIDP 2.0, CLDC 1.1, WMA 2.0, MMAPI 1.1, Web Services (JSR 172), File and PIM APIs (JSR 75),Bluetoothand OBEX APIs (JSR 82), and3DGraphics (JSR 184);同时您也可以使用该版本开发面向CLDC1.0 和MIDP1.0的应用程序。
这里之所以选用Sun公司的J2ME Wireless Toolkit产品,是因为这样开发出来的手机软件可以具有更大的通用性。如果你只是出于为自己的爱机DIY应用软件的目的,则完全可以根据自己使用手机的型号从相应厂商网站下载与之对应的J2ME SDK,这样开发出来的手机软件能够以更优的方式在真机运行
厂商SDK
现在支持Java的手机厂商很多,很多厂商的SDK是基于Sun公司的WTK的,在WTK的基础上填加了自己的模拟器和自己的扩展API。也就是说,在使用厂商的SDK时,可以使用厂商的扩展类库,例如Nokia的UI类库,和厂商自己的模拟器而已。每个厂商的扩展API都不多,而且不尽相同。现将常用的手机厂商SDK和下载地址说明一下:
1、 Nokia
Nokia不愧为手机行业的老大,对于j2me的支持也是一流的,有专门的网站提供SDK和各种文档说明。
网址是:http://forum.nokia.com.cn/sch/index.html
2、 Siemens
Siemens对于J2ME的支持也不错,它提供了SDK,模拟器需要独立安装。下载地址如下:
https://communication-market.siemens.de/portal/main.aspx?LangID=0&MainMenuID=2&LeftID=2&pid=1&cid=0&tid=3000&xid=0
3、 SonyEricsson
SonyEricsson SDK以及自己的模拟器,下载地址为:
http://developer.sonyericsson.com/site/global/docstools/java/p_java.jsp
http://mobilityworld.ericsson.com.cn/development/download_hit.asp
http://developer.sonyericsson.com/site/global/docstools/java/p_java.jsp
4、 Motorola
Motorola提供了专门的SDK,内部包含模拟器,下载地址为:
http://www.motocoder.com/motorola/pcsHome.jsp
5、 SamSung
SamSung也提供了专门的SDK和模拟器,下载地址为:
http://developer.samsungmobile.com/eng/front_zone/bbs/bbs_main.jsp?p_menu_id=1500
6、 : NEC
NEC也提供了集成模拟器的SDK,下载地址为:
http://www.nec-mfriend.com/cn/
J2ME第三方模拟器KEmulator
目前KEmulator支持的API包括:
MIDP 2.0(JSR118)
NokiaUI 1.1
Samsung 1.0
Sprint pcs
M3G 1.1(JSR184)
WMA1.0(JSR120)
Bluetooth(JSR82)
PDA PIM(JSR75)
手机虚拟机
诺基亚塞班平台
Series 40 platform SDKs
Symbian SDKs
安卓平台
Anjroid SDK
网友评论