J2ME系列学习(一)

1 Java平台的划分

J2EE(Java 2 Enterprise Edition) J2SE (Java 2 Standard Edition) J2ME(Java 2 Micro Edition) Java Card

所有平台的划分以J2SE为基准点,J2SE支持所有的Core Class以及8种基本类型(boolean,char,byte,short,int,long,float,double)。

2 J2ME技术架构

三个名词:JCP(Java Community Process),JSR(Java Specification Request),Expert Group。Expert Group 遵循JCP所制定的准则来制定各种JSR。

J2ME由三种类型的规范堆栈而成,最下面的是Configuration,中间是Profile,最顶层是Optional Packages。Configuration定义了硬件所必须具备的能力,比如ROM,RAM,CPU的时钟周期最少应该是多少等,还有一组低级API。Profile针对不同机器的特性定义了高级的API,这些API通常都是与其他平台不相关的扩充类库,高级API决定了该种机器上java程序的撰写方法。而就算是同种设备,也有不同的功能,这些功能就定义在Optional Package(厂商选择性实现包)中。

名词:RI(Reference Implementation)参考实现 TCK(Technical Compatible Kit)兼容性测试包

3 CLDC CDC MIDP

CLDC(Connected Limited Device Configuration)有限连接设备配置

CDC(Connected Device Configuration)连接设备配置

MIDP(Mobile Information Device Profile)移动信息设备简表

J2ME大致把所有的嵌入式设备大体上分为两种:一种是资源有限,包括运算能力有限,电力供应有限,联机速度有限或是屏幕大小与色彩有限的嵌入设备,比如PDA,手机;另一种是资源相对无限的设备,比如说冷气机,电冰箱,电视机顶盒。相对于这两种设备的Configuration就是上面列出的CLDC和CDC。

CDC1.0和 CDC1.1在Core Class上和J2SE相差无几,也支持所有的java基本类型。但是CLDC1.0就相距甚远,除了只剩下两三个包之外,也不支持浮点数(float,double)。CLDC1.1加强了CLDC1.0的功能,提供了浮点数运算的支持,也增加了java.lang.Float和java.lang.Double两种工具类,还有与J2SE更相近的工具集java.util.Calendar,java.util.Date,Zone等等。虽然增加了很多功能,但运行时最小内存也从CLDC1.0的160KB增加到192KB。

上面说的是配置(Configuration),下面看看简表(Profile)。

Profile是定义在Configuration之上的规范,每种profile都会声明它是根植于哪种Configuration的。之所以会有Profile的出现,是为了要更明确区分出各种嵌入式设备之上的java程序该如何开发,以及它们应该有什么功能。其中Mobile Information Device Profile(MIDP)就是针对移动设备所定义的,比如Pager,Mobile Phone等等,都是属于移动设备。另一个Information Module Profile(IMP)则是针对没有屏幕的移动设备所设计。

目前MIDP2.0规范要求屏幕大小至少要95×54的黑白屏幕,至少要有256KB的内存,8KB以上的非易失性内存(non-volatile memory)作为应用程序储存数据使用,以及能够播放声音的功能。

4 Optional Packages和Building Block

所谓厂商选择性实现,通常是一些本身具有独立价值的API,厂商可以按照自己的需求,选择性的实现其中某些Optional Packages规范。它是架构在特定Configuration之上。例如,PDA Optional Packages就是由Palm Computing公司所主导,用来补充MIDP功能的Optional Packages,尤其某些在PDA上很重要,而MIDP又没有的功能,例如AWT,PLM等。

由于在完整的Optional Package规范中所制定的功能过于强大,某些机器因为时空问题无法顺利实现出来,或是短期内对于Optional Package所提供的功能并没有完整的需求,从而有了Building Block的出现。

JTWI(Java Technology for Wireless Industry)是一个综合性的规范,其目的是为了确保J2ME软件的可移植性。JTWI主要分为三部分:1 规定平台必须支持的API 2 统一的应用程序执行环境 3 既有规范的理清与加强。 在API部分,JTWI规定至少必须支持CLDC1.0、MIDP2.0以及WMA1.1。

最完整、功能最强平台:CLDC1.1+ MIDP2.0+ WMA1.1+ MMAPI1.1

JTWI规定:可以执行J2ME应用程序的移动通讯设备,至少可以容许大小为64KB以上的程序主体(JAR文件)、5KB以上的应用程序描述文件(JAD文件)、30KB以上的永续存储空间,执行时期的内存为256KB。

JTWI规定:设备所支持的任何媒体格式(例如图片、声音、影象等)都应该能够使用HTTP1.1提取,即存取这些媒体所使用的URL都必须能够接受HTTP作为存取的通讯协议。

5 MIDP应用程序的部署

所谓MIDP应用程序,就是指遵循MIDP规范所开发的应用程序。一个完整的MIDP应用程序由两个文件组成:应用程序主体(JAR文件)和应用程序描述文件(JAD文件)。当我们完成一个MIDP应用程序之后,必须让程序能在用户的设备上执行,这个行为称为部署(deploy)。

部署方式:两种——OTA 与 非OTA

OTA(Over The Air)即经由无线通信网络将MIDP应用程序下载到设备上。

非OTA:1传输线和买手机附赠的下载软件   2 红外线(IrDA)   3 蓝牙(Bluetooth)   4 多媒体信息服务(MMS)   5 Email附件

JINI:一种可以连接各种java平台的技术。不同平台的java程序经由JINI能够彼此连接在一起,彼此分享对方的资源。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本教程由J2ME开发网 的网友集体创作。任何人未经J2ME开发网的书面许可,不得将本教程用于商业目的。 献给所有关注移动应用的朋友们。 希望本教程能够助你拨开移动开发的迷雾, 走入这一崭新的领域。 移动应用,未来属于你和我。 本教程的内容 本教程首先介绍了j2me 开发体系,然后深入各个MIDP2.0 API,最后是搭建平台的知识。 第一章 “J2ME 技术概述”让你在学习J2ME 以前知道什么是J2ME。本章介绍了J2ME 平台的体系结构和MIDlet 生命周期的概念。为以后的内容打下良好的基础。 第二章“CLDC 简介”介绍了MIDP 的基础Java Community Process(JCP)公布的CLDC1.0规范(即JSR30)。有了这些知识你就可以顺利的从j2se 的基础API 过渡到MIDP 的基础API上了。 第三章“MIDP 高级UI 的使用”介绍了MIDP 的可移植UI API,我们称之为高级UI。这样您的应用就可以栩栩如生了。 第四章“MIDP 低级UI 的使用” 介绍了MIDP 的不可移植UI API,我们称之为低级UI。利用他你可以更加自由的绘画你的UI。你将了解到关于事件处理的很多知识。 第五章“MIDP 的持久化解决方案 — RMS” 为我们讲解了数据持久化机制——记录管理系统(Record Management System RMS)。这一特别的小型数据库使得MIDP 的数据保存变得很特别。 第六章“GAME API” 介绍了MIDP 2.0 相对于1.0 来说,最大的变化——新添加的用于支持游戏的API,它们被放在javax.microedition.lcdui.game 包中。游戏API 包提供了一系列针对无线设备的游戏开发类。你可以开发你的游戏了。COOL! 第七章“开发无线网络应用程序” 让我们学习如何开发令人激动的联网应用。无线网络在当今的技术下与有线网络相比它的带宽更小、延迟更大、连接的稳定性更差。这要求我们在开发无线联网应用程序时,和以往有很大不同。 第八章“MIDP 2.0 安全体系结构” 将主要介绍MIDP 的安全体系模型,并结合一个具体的实例来讲述MIDP2.0 安全模型的主要概念。 第九章“MIDP 2.0 Push 技术”介绍了如何通过异步方式将信息传送给设备并自动启动J2ME 中文教程 by www.j2medev.comMIDlet 程序的机制。 第十章“MIDlet 的开发流程与部署”介绍了如何真正完成你的程序并打包发往设备运行。 第十一章“搭建开发平台—WTK”主要讲述J2ME 新手最常使用的开发工具Wireless Toolkit(WTK)。从WTK 的安装、到MIDlet 项目的创建、以及最后的打包发布,一步步带领读者进入MIDlet 的开发世界! 第十二章“搭建开发平台—Eclipse”讲述了如何利用EclipseME 作为Eclipse 一个插件,帮助开发者开发J2ME 应用程序。 第十三章“搭建开发平台—JBuilder”介绍了如何利用久负盛名的JBuilder 作为开发工具来开发J2ME 应用程序。 本教程的合适的读者 本教程是为了学习J2ME MIDP 技术的开发者准备的。尽管本教程内容涉及初学阶段,但本教程不仅仅是一本入门的读物,很多的内容的详细程度对于有经验的开发者来说,也是很多脾益的。事实上,本教程假定初学者已经有了一定的JAVA 语言基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值