星期四, 十一月 02, 2006

Motorola A1200,Linux和J2ME技术参数介绍(开发专用,for programmer)

Motorola A1200是基本Linux内核并架构了J2ME框架了的智能手机,开放性可以说是相当的强。出于兴趣,me特把一些技术参数做些整理,方便有兴趣开发应用程序的朋友使用。Motorola官方可以说是相当的不友好,me在其开发支持站点找了n久,没有多大收获,只好自力更生了,劳烦Google出不少力倒是真的^_^

Linux这个名字大家或许都听说过,因为它是开源运动的急先锋和标志性成果,另外应用性也很强,很多国家想摆脱微软在操作系统上的垄断时都不约而同的想到了Linux,叫嚷了有段时间的中日韩操作系统开发计划和应用标准的制定就是基于Linux的,再就是前不久在长沙推出的所谓完全国产拥有知识产权的“麒麟”操作系统,其实也是Linux。

Linux因为其开发源码并拥有活跃热情且水平超高的不分国界的高手(即大名鼎鼎的黑客)团队,发展很快,在服务器市场表现非常出色,同时也逐渐开始渗透桌面用户(一般的用户都算是)。

然后说操作系统。其实所有的手机甚至呼机都是有操作系统的,无非是功能强大与否、是否开发支持第三方开发等等。呼机还分中文的、英文的,因为全部是从国外抄过来的,全盘拷贝过来用英文字母表示汉语拼音当然容易些,要显示中文有技术难度,所以说中文呼机的操作系统比英文的强大。手机也是一样,和刚开始仅仅支持通话、短信的原始手机(比如摩托罗拉的2088、诺基亚的8250)相比,还能支持上网及J2ME平台的手机(如摩托罗拉A388)当然在操作系统方面也强大好多。

再说开放性,也就是说是否支持应用程序的安装删除(像电脑上那样)。在J2ME技术平台出现之前,几乎所有的手机都是封闭的操作系统,只有生产厂家和其指定的合作伙伴能开发应用程序,并且这些程序需要在出厂前就安装好,到了用户手里后是不能自己做什么改变的。随着智能手机概念的出现以及软硬件能力的提升,手机需要越来越多的应用来扩展功能。

在操作系统方面,几个大的手机厂商如摩托罗拉、诺基亚等联合制定标准并开发了Symbian系统,该系统诺基亚用的比较多,比如大名鼎鼎的S系列手机。摩托罗拉虽然参与了标准制定,但在机器开放方面一直动作迟缓,可能是心怀顾虑也有可能是别有他想。2004年左右摩托罗拉终于启动了这方面的步伐,出人意料的推出了采用移动版Linux为操作系统的Motorola A760,赢得一片喝彩,后来接连推出了E680以及现在的A1200等。除了Symbian和Linux外,还有任何地方都不愿缺席的微软推出的Windows Moblie,呵呵。摩托罗拉的MPx220就是用的那个操作系统,功能很强大,不过和电脑一样的毛病,运行一段时间需要重启。再说的话,也应该把PALM算上。这个PDA的鼻祖现在也正转型,在PDA中增加了电话功能来趟智能手机这场混水。

再介绍下J2ME。Sun公司推出的Java是一种编程语言。这种语言参考了很多前辈经典语言的优缺点,并且结合互联网普及的大潮流增加了很多适应时代发展的特性。该语言框架很大,既有标准版J2SE,还有企业版J2EE,再就是微型版J2ME。J2ME专门针对那些计算能力一般、不能持续供电并且经常处于移动状态的设备,比如手机。作为一套标准,所有不管什么设备,只要支持了J2ME标准,那开发的JAVA程序都能够运行。这相当于给手机开了各天窗或者说单独的通道,为机器功能扩展提供了可能和并规范了标准。

小结一下。Linux和J2ME是摩托罗拉A1200保持“软”魅力的核心原因。

Linux有很多版本,A1200采用的是MontaVista Linux,具体名称版本是
MontaVista(R) Linux(R) Consumer Electronics Edition 3.1
Linux/armv5tel 2.4.20_mvlcee31-mainstone_pxa27x

MontaVista是一家专门为连沟通连接类设备提供操作系统软件和开发工具服务的商业公司,其提供的以MontaVista命名的Linux分四个类别,分别是MonstaVista Linux for Embedded Devices(Professional Edition)、for Communications Infrastructure(Carrier Grade Edition)、for Consumer Electronics(Consumer Electronics Edition)、for Mobile Devices(Mobilinux)。比较奇怪的是A1200采用的是第三种即电子消费品类而不是第四种移动设备类,是不是因为A1200的硬件(比如CPU、内存和芯片主板总线等)功能太强,用相对简单的第四种比较浪费资源呢?最起码说明A1200的硬件能力和一般的电子消费品是相当的,这是个好消息。对该操作系统感兴趣的看这里,有相当详细的介绍和技术参数。

Motorola A1200支持CLDC-1.1和MIDP-2.0,以及JTWI version 1.0,支持的JSR还有有Moblie Media API Version (MMA JSR-135)1.1,MMA can take photos,A midlet can use Bluetooth(JSR-82),Supports 3D graphics (JSR-184),Geographical positoning with Java (Location API JSR-179)1.0,JSR-172。

CLDC全称为Connected Limited Device Configuration(有限连接设备结构),分别对应了JSR 30和JSR 139两个JSR。JSR(Java规范请求)是指向JCP(Java Community Process)提出新增一个标准化技术规范的正式请求。JAVA是Sun公司开发并竭力推广的语言和平台,为了对其进行完善,它组织了一个委员会进行管理,并向所有人开放,比如上文说的JSR是任何人任何组织都可以提出的。但毕竟谁都知道是Sun这个商业公司在幕后操作,深怕Sun有一天垄断了JAVA并借此平台向他们发威,大型商业公司都有点若即若离的不肯用全力,并不断批评Sun对JAVA的霸占。呵呵,刚听说Sun好像已经同意在半年内完全开放JAVA了,这倒是个好消息。

CLDC专门针对移动电话、阅读器和主流的PDA(个人数字助理)定义了一组基础的应用程序编程接口和虚拟机标准,和配置文件如MIDP一起配合,就构成了一套实用的Java平台,可以为内存不多、处理器性能有限、图形能力一般的设备开发应用程序。呵呵,me翻译的可能有点拗口,将就下吧。

具体说说CLDC-1.1。CLDC-1.1是CLDC-1.0的升级版,后者才是基础。CLDC-1.0是基于JSR-30的,定义了JAVA编程语言的一套子集,包括虚拟机的功能上,网络支持,安全安装以及其他核心API上都是子集和全集的关系,主要目标是某类嵌入式的消费类产品。CLDC-1.1是CLDC-1.0技术标准的修订版本,是基于JSR-139的,包含了一些新的特性比如浮点运算和弱引用等方面的支持,和CLDC-1.0是完全向后兼容的(这就意味着能在CLDC-1.0基础上运行的程序同样保证能在CLDC-1.1上运行)。

MIDP(the Moblie Information Device Profile,移动信息设备简表),和CLDC一起构成了专为目前较流行移动信息设备构建的Java运行时环境。具体说MIDP-2.0,是MIDP-1.0的修订版,后者才是基础。MIDP-1.0是基于JSR-30的,为某类垂直市场或行业定义了一套设备类型相关的API集合。MIDP-2.0基于JSR-118,相较MIDP-1.0新增了加强的用户界面、多媒体和游戏功能、更棒的连接性、提供空中传递服务以及端对端的安全性。它和MIDP-1.0是完全向后兼容的。

JTWI(Java Technology for the Wireless Industry)规范,也就是JSR-185,为下一代实现了Java技术的移动电话定义了一套工业标准的平台,这增强了程序开发者和生产厂商的相互可操作性,因为两者都会在既定的、清晰的标准平台上工作,另外则清晰化了安全方面的规范,加强了对非信任程序的管理。该规范的目标就是通过制定一套标准并在开发者和厂商之间进行推广,提高程序的可移植性和厂商实现设备的Java支持时的不确定性。这套工业标准对CLDC-1.0(JSR-30)、MIDP-2.0(JSR-118)、WMA-1.1(JSR-120)、CLDC-1.1(JSR-139)和MMAPI(JSR-135)有效。

MMA(Mobile multimedia API)基于JSR-135,为J2ME定义了一套多媒体API,允许对声音和多媒体资源进行简单的存取控制等操作,同时也提供了批量处理和其他更高级的特性。A1200中还支持录音和照相。

JSR-82是针对蓝牙的,标准化了一组Java API以允许设备整合入某个蓝牙环境。

JSR-184是移动3D图形API,提供了对可延展交互3D对象的操作。

JSR-179是针对全球定位的,必须工作在CLDC-1.1之上。

A1200还支持JSR-172可选包,J2ME Web Services,包含两部分:JAX-RPC和JAXP。

终于算告一段落,把Motorola A1200所支持的Linux和J2ME平台以及相对详细的资料进行了简单介绍。先弄到这里,以后再慢慢添加并更新。



相关文章:
摩托罗拉手机论坛 - A1200 - Linux 手机新手入门教程 - powered by Discuz!
Jserv's blog: opensource.Motorola.com
Motorola A1200 MIDP Java telephone
摩托罗拉 A1200 - 手机 - 规格配置 - MyPrice产品库
MOTOROLA 摩托罗拉A1200GSM 手机 用户点评
??之王??? - Motorola - Motorola A1200 用家?表意?(? 9) - powered by Discuz! Archiver
咖啡小志Motorola A1200
基于WAP的手机上网方案 - 站着说话|Windrose's Blog - DonewsBlog
Whisht Wind : Weblog
MontaVista Linux 消费电子版 CEE 3.1

Technorati Tags: , , , , , , , , , ,

4 条评论:

逝者如斯 说...

找到了一个PDF,名字叫Build your J2ME Web Services Application with A1200。看来A1200也支持JSR-172。把文章先修改了的说。
btw,文章如有错误,请各位朋友留言指正,谢谢了。

A Blue Tie 说...

hello heart5, saw an extensive page on A1200...good to know about it..we can certainly chat about it

匿名 说...

谢谢 终于找到我想要的了 网上关于此类文章太少 支持你 希望你能继续写 再次支持

逝者如斯 说...

谢谢robin朋友鼓励支持 多交流