2005,J2ME引领移动开发

OpenCV实战:5分钟搞定图像拼接(附Python代码) 本文通过OpenCV实战教程,详细讲解如何使用Python在5分钟内完成图像拼接。重点介绍`findHomography`函数和单应性矩阵的应用,提供完整的代码示例和常见问题解决方案,帮助开发者快速掌握图像拼接技术。 阅读详情

文章摘要
    2005年对计算机通信行业的开发者和从业者来说有太多的期待,而最值得期待的就是被称之为纯技术驱动的第三代移动通信系统的商用。姑且不谈纯技术驱动有没有市场,能不能成功,但是3G的商用必定会给移动开发插上飞翔的翅膀,笔者认为J2ME将是移动开发这场竞赛的领跑者。本文将从总体介绍J2ME的体系结构和主要内容,同时谈谈J2ME同其他移动开发平台的比较。


J2ME概述
     2004年,移动开发恐怕成为了最时髦的字眼。在优快云的最近一份调查显示,有24.34%的受访者涉足嵌入式/移动设备应用开发,这个数字可能略高于实际的比例,但也足可说明嵌入式/移动设备应用开发是一块诱人的新鲜奶酪。J2ME是嵌入式/移动应用平台的王者,Linux和WinCE分列二、三位。Nokia等厂商力推的Symbian平台目前开发者占有率尚未达到满意水平,考虑到调查项合并了嵌入式设备(例如PDA)和移动设备(例如智能手机),Symbian、WinCE系列在移动平台上会是竞争的主要两方。如果厂商能在标准实现上做得更加规范,则J2ME的跨平台特性会发挥得更加淋漓尽致,继续保有王者地位。

    J2ME是SUN公司推出的针对嵌入式消费类电子产品的开发平台,与J2SE和J2EE共同组成Java技术的三个重要的分支。J2ME实际上是一系列规范的集合,由JCP组织制定相关的JSR并发布,各个厂商会按照规范在自己的产品上进行实现,但是必须要通过TCK测试,这样确保兼容性。比如MIDP2.0规范就是在JSR118中制定的。J2ME平台的形成颇有些Java技术回归起点的味道,我们知道Java本来就是针对消费类电子产品而生的一门编程语言,而后才慢慢发展为一门技术、一个平台的。

    谈到J2ME我们通常都会说到一个词KVM,而这可以认为是J2ME的起源,KVM之父Antero Taivalsaari本来在SUN公司参与一个名叫Spotless的研究型项目,由于他曾经有着在世界知名电信设备制造商工作的经历,这使得他萌发了在移动终端设备,比如手机,上实现java虚拟机的想法,而这得到了经理的支持。随后AT做为领导者带领团队开发了能够在手机这样的移动终端设备上运行的虚拟机和CLDC核心类库。慢慢的J2ME浮出了水面。

    J2ME的设计应该说是众多顶级工程师的结晶,她被设计的非常灵活。在J2ME中非常重要的两个概念是Configuration和Profile。Configuration是支持最大范围设备的最小的平台,在这一层还包括了Java虚拟机。Profile是针对特定的设备提供相应的开发包集合。另外针对某些设备特有的功能特性,J2ME还推出了Optional Profile的概念。比如Mobile Media API。


 

 

 

 

 

 

 

 

 

    在J2ME平台中有两个主要的Configuration,一个是Connected Limited Device Configuration,一个是Connected Device Configuration。区分的标准则是按照设备的处理器、内存、联网能力等硬件特性。由于这些规范制定比较早,而现在的移动终端设备的处理和存储能力都有了质的飞跃。因此不再列出区分的标准,因为那已经没有了意义,你甚至会认为那是错误的。目前J2ME的应用主要还是基于CLDC的,因此本文将主要向读者介绍基于CLDC的J2ME平台。不过笔者在两家世界著名电信设备商参加的开发项目表明,基于CDC的应用将慢慢占领主流市场,因为CDC提供了更强大的类库支持。

    Mobile information Device Profile位于CLDC之上,在CLDC规范制定出来后并没有引起开发者的广泛注意,市场也没有因此而发生变化。原因是CLDC中并没有提供图形用户界面编程的接口,这样应用程序就没有和用户交互的能力了。MIDP1.0的推出受到了开发者的广泛关注,在MIDP1.0中提出了一种新的应用程序模型MIDlet,开发者还可以用MIDP中提供的javax.microedtion.lcdui包开发图形用户界面程序,用MIDP1.0的子系统Record Management System进行数据的持久性操作,借助于CLDC中提供的Generic Connection Framework的联网能力可以通过HTTP协议访问Web服务器,J2ME几乎无所不能。然而一些问题也慢慢暴露出来,由于MIDP的规范制定得过于宽泛、提供的功能有限,导致各个厂商在实现MIDP的时候在功能特性上存在很多差异,比如应用程序的大小、RMS的存储空间、并行存在的线程数量等等。更糟糕的是各个厂商还实现了很多J2ME之外的功能,例如Nokia UI API中提供了声音处理以及全屏等功能,这样破坏了Java跨平台的特性,如果你得程序中应用了Nokia UI API的话,那么它就不能移植到Motorola的手机设备上了。为了弥补这些不足,SUN在随后的MIDP2.0中推出了MMAPI的一个子集来解决声音处理的不足,并设计了一个独立的游戏开发包javax.microedition.lcdui.game用于游戏开发,还对push、socket联网等特性提供了支持。在JSR185中更是推出Java Technology for the Wireless Industry使得规范更加严格,提高了应用程序的兼容性。不仅如此,J2ME中的可选包更是各显神通,Bluetooth API,SIP API for J2ME和Mobile 3D Graphics都提供了非常强大的功能。
 

J2ME的发展与竞争
    软件环境飞速发展的同时,J2ME平台的硬件环境和市场同样越来越成熟。Java手机的数量在成倍增长,预计2006年java手机数量有望突破6亿部。硬件中加快集成Java预计将进一步促进Java在市场中的普及,J2ME将成为事实上的标准。到2006年,Java手机预计将占全部手机出货量的83%。与此同时移动增值业务的突飞猛进大大的推动了J2ME技术的发展,预计到2008年全球与Java相关的移动增值业务市场总值将达到147亿美元。

    2004年微软公司开始逐渐进入移动通信行业,并与美国的电信设备制造商Motorola推出内置微软SmartPhone的手机,打入手机市场。另外高通的BREW和Nokia的Symbian也一直认为是J2ME的竞争对手。不过目前他们的市场占有量都还很难和J2ME平台相比。BREW的兼容性差是最大的缺点,2004年中国联通不甘心受制于高通的限制,而与SUN公司联手打造了UniJa平台。笔者认为微软提供的Mobile Windows和Nokia的Symbian平台将是J2ME最大的竞争对手,Symbian是目前最成熟的手机操作系统,通过使用Nokia提供的SDK,开发者可以使用Java或者C/C++进行应用程序的开发,遗憾的是Symbian的开发资料相对贫乏,C++语言的开发效率比Java要低 ,这些都给基于Symbian操作系统的C++开发的推广带来了不利的影响。国外的Motorola和国内的多普达等厂商陆续推出了基于微软SmartPhone操作系统的手机,表明了微软进军移动开发市场的野心,通过使用微软提供的SDK,开发者可以在手机上使用Compact .Net Framework进行高效的开发,当然也可以使用C/C++。然而毕竟微软刚刚进入移动开发市场,市场占有率还不高。

    J2ME平台是开放的,目前已经占领了绝对份额的市场。我们有理由相信J2ME将继续成为移动开发的领导力量。


结束语
    走过弥漫着硝烟的市场、信步在大自然的怀抱的时候才可以让我们开发者更加清醒。无论鹿死谁手,开发者始终应该保持的是那份对技术务实的执著,摒弃那份浮躁与不安。2005年是移动开发走向成熟的一年,J2ME将继续领跑。让我们拭目以待!


作者简介
    詹建飞,北京邮电大学信号与信息处理专业硕士研究生,从事Java技术的研究与开发三年。曾在Motorola(中国)电子有限公司担任软件工程师开发基于Java的手机平台JUIX项目。2004年8月创办J2ME开发网(http://www.j2medev.com)。电子信箱 eric.zhan@263.net。

电子科技大学计算机预推免(最终去向) 电子科技大学,预推免报名时必须要有一封本校老师写的推荐信,推荐信基本上就是复试的入场券,所以一定要提前联系老师,拿到推荐信。只要有机会进了面试,我觉得老师对于双非并不歧视,面试的个人表现才是关键性决定因素,技巧性也是很强的,如果有需要帮助的,欢迎私信~~ 阅读详情

相关推荐

西门子触摸屏教程wincc flexible2008 sp5 Smart V3 V4中文版软件

西门子触摸屏教程wincc flexible2008 sp5 Smart V3 V4中文版软件

liang007dudu的博客 1万+

J2ME引领移动开发

2005 J2ME引领移动开发 文章摘要    2005年对计算机通信行业的开发者和从业者来说有太多的期待,而最值得期待的就是被称之为纯技术驱动的第三代移动通信系统的商用。姑且不谈纯技术驱动有没有市场,能不能成功,但是3G的商用必定会给移动开发插上飞翔的翅膀,笔者认为J2ME将是移动开发这场竞赛的领跑者。本文将从总体介绍J2ME的体系结构和主要内容,同时谈谈J2ME同其他移动开发平台的比较。J2M

Holly 1099

【精细解读】xapp585(多通道LVDS接口ADC)

xapp585的参考设计有Verilog和VHDL两种源码。

FPGA艺术家的博客 533

J2ME 2005移动开发这场竞赛的领跑者

2004年,移动开发恐怕成为了最时髦的字眼。在最近一份调查显示,有24.34%的受访者涉足嵌入式/移动设备应用开发,这个数字可能略高于实际的比例,但也足可说明嵌入式/移动设备应用开发是一块诱人的新鲜奶酪。J2ME是嵌入式/移动应用平台的王者,Linux和WinCE分列二、三位。Nokia等厂商力推的Symbian平台目前开发者占有率尚未达到满意水平,考虑到调查项合并了嵌入式设备(例如PDA)和移动

bishopinred的专栏 1289

飞牛fnNAS虚拟机标准安装

飞牛NAS是一款基于Debian开发的国产免费NAS系统,支持x86架构设备,可将闲置硬件改造为NAS服务器。系统安装简便,支持多种存储模式与硬盘休眠功能,具备智能影视管理、照片备份等实用功能,并提供多种远程访问方式。飞牛NAS还支持Docker扩展,目前已承诺永久免费。文章详细介绍了在VMware虚拟机中安装飞牛NAS的步骤,包括下载镜像、创建虚拟机、初始化设置等过程,并展示了创建共享文件夹等基本操作,帮助用户快速上手这款功能强大的免费NAS系统。

dgnankai的专栏 3262

【GlobalMapper精品教程】001:GlobalMapper23+24+25 Pro-x64中文汉化版安装教程(附软件包下载)

Global Mapper 23+V24+V25中文汉化版安装教程及免费下载地址,是一款非常专业的地图绘制软件,功能非常的丰富,内置距离和面积计算,包括光栅混合、对比度调节、海拔高度查询、视线计算以及一些高级功能,通过地表数据观察分水岭、对3Dpoint数据转换为三角多边形和网格化等设置。本文讲解GlobalMapper23.1 Pro-x64安装过程。

智慧空间实验室 3万+

J2ME开发工具概述[转自优快云]

导言 JAVA平台以其良好的开放性和支持能力,得到了众多手机厂商的支持。对众多开发者来说,J2ME程序易于移植,轻松实现“一次编写,到处运行”。J2ME系列开发专题,将带你从最基本的工具安装,环境配置开始,进入移动应用开发的世界。

小李专栏 1812

工业缺陷检测:基于深度学习的表面缺陷分类

工业缺陷检测:基于深度学习的表面缺陷分类 ,人工智能,计算机视觉,大模型,AI,在现代工业生产中,产品质量直接影响企业的竞争力和声誉,工业缺陷检测作为质量把控的重要环节,其技术的发展至关重要。传统的人工检测方式效率低、成本高且易受主观因素影响,难以满足大规模、高精度的生产需求。随着深度学习技术的蓬勃发展,基于深度学习的工业表面缺陷分类方法凭借强大的特征提取和模式识别能力,成为解决工业缺陷检测难题的有效途径。本文将深入探讨基于深度学习的工业表面缺陷分类技术,结合详细的代码示例和概念解析。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 3万+

Java语言的前世今生

1.3 Java语言概述  是SUN(Stanford University Network,斯坦福大学网络公司 ) 1995年推出的一 门高级编程语言。  是一种面向Internet的编程语言。Java一开始富有吸引力是因为Java程序可以 在Web浏览器中运行。这些Java程序被称为Java小程序(applet)。applet使 用现代的图形用户界面与Web用户进行交互。 applet内嵌...

一生的陪伴 880

一、OpenSM 架构部署及原理详解

OpenSM 是 InfiniBand 网络的核心组件,通过自动化的拓扑发现、路由计算和状态维护,确保网络的高效运行。部署时需关注配置文件参数、路由算法选择和高可用性设计,调试时可借助日志和诊断工具快速定位问题。

jundao1997的专栏 1131

8、内存交织技术详解

本文详细解析了内存交织技术的基本原理、工作机制及实现方式,探讨了其在提升内存访问速度和系统性能中的关键作用。文章还分析了内存交织的优缺点、实际应用场景以及与其他优化技术的结合应用,并提出了未来发展的可能方向,为理解与运用该技术提供了全面参考。

g9h0i1的博客 553

地老天荒,Java 伴我行

起源       詹姆斯·高斯林 ( James Gosling ) 是一个全能的计算机天才,他是 Java 编程语言的共同创始人之一,一般公认他为 Java 之父。1977 年,詹姆斯·高斯林获得了加拿大卡尔加里大学计算机科学学士学位,并于 1983 年获得了美国卡内基梅隆大学计算机科学博士学位。   &...

codeenjoy的博客 364

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

免费GIS平台

http://bgming.cnblogs.com/archive/2005/10/18/257253.aspx 本站主要介绍免费WebGIS平台,它们具有共同特点:免费使用,开放源代码(具体使用规则请参看各个平台的 Lisense文件),希望借此带您进入广阔的开源GIS世界。 采用Java开发的几个主要的开放源代码的WEBGIS平台列表(由于时间有限,只选取部分平台) ...

weixin_34217773的博客 139

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

开源不只用来玩,“拿来主义”遭唾弃

导读:<!--google_ad_client = "pub-7058131363132249";/* 468x15, 创建于 08-6-3 */google_ad_slot = "4187223796";google_ad_width = 468;google_ad_height = 15;//--> <script type="text/javascript"s

Tisty的兵工厂--新Blog:http://www.UbuntuSky.cn 961

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

盛大网路

盛大网路求职干货目录1. 公司介绍 1.1 盛大网络概况 1.2 盛大网络历史 1.3 盛大主营业务/品牌 1.4 盛大组织结构 1.5 盛大集团文化/价值观 2. 校招介绍 2.1 盛大网络2014校园招聘介绍 2.2 盛大网络校园招聘流程 3. HR答疑 3.1 盛大网络校园招聘FAQ 3.2 盛大网络官方网申答疑 4. 薪酬待遇 4.1 盛大网络职业发展 4.2 盛大网...

weixin_34308389的博客 2625

WML开发详细指南

  <A title="文章标题:WAP开发入门--搭建开发环境作 者:mingjava更新时间:2004-9-7 15:34:35点击次数:82" href="http://www.j2medev.com/Article_Show.asp?ArticleID=76" target=_blank>WAP开发入门--搭建开发环境讲述了如何搭建WAP应用程序的开发环境,本章将主要介绍

mingjava的专栏 1万+

搭建OTA下载服务器

 OTA的意思是Over The Air,通过无线网络下载和安装J2ME应用程序的方案。搭建OTA服务器是比较简单的,但是做一个完整的OTA的服务器却非常复杂,因为这要设计到软件的管理,下载的计费,安全认证等多个问题。本文主要目的是讲述OTA下载的主要原理,搭建OTA服务器的步骤。     当我们的手机通过无线网络发出请求要求下载相关的软件的时候,通常我们是访问了特定的页面。这可以是wml写的。我

mingjava的专栏 1万+

工欲善其事,必先利其器——搭建J2ME开发环境

      由于本文写作的时候eclipseME的版本还比较低,但是在0.5(如果我没有记错的话)以后安装方式就改变了,截至到11.18号最新的版本应该是0.6.1,如果大家安装高版本的话请参考下面连接中的文章,http://www.j2medev.com/Article_Show.asp?ArticleID=144如果是0.4.x的可以参考本文。       由于WTK并没有提供代码编辑的功能,

mingjava的专栏 1万+

揭开J2ME平台的神秘面纱

      做J2ME应用开发的程序员也许经常会被一些名词或者概念所迷惑,比如Personal Basic Profile和Personal Profile有什么关系?基于CLDC的应用程序能够无修改的移植到基于CDC的设备上嘛?要回答这些问题并不容易,因为你必须首先揭开J2ME平台的神秘面纱。       2000年当J2ME平台的CLDC发布的时候,所有的java开发者都为之兴奋不已。SUN也

mingjava的专栏 1万+

应用Java技术开发WAP应用程序

 <A title="文章标题:WAP开发入门--搭建开发环境作 者:mingjava更新时间:2004-9-7 15:34:35点击次数:56" href="http://www.j2medev.com/Article_Show.asp?ArticleID=76" target=_blank>WAP开发入门--搭建开发环境一文中介绍了如何搭建WAP开发应用程序,这篇文章将讲述如

mingjava的专栏 7026

J2ME对话-采访KVM之父AT

今天在SUN看到一篇采访KVM之父AT的文章,觉得很不错。因此翻译了其中一部分,希望能对网友有所帮助。Antero Taivalsaari是KVM的创始人,他领导了CLDC规范的开发并对J2ME的很多特性都做出了巨大的贡献。Q:KVM是如何形成的?A:在来到SUN工作之前,我在电话设备制造商工作,因此我对移植适宜在手机上运行的JAVA平台十分有兴趣。但是我们遇到的问题是,目前所有嵌入式版本的JAV

mingjava的专栏 6658

Record Management System从入门到精通系列之一

      Record Management System是J2ME的一个重要的子系统,目的是实现应用程序本地数据的持久性存储。目前支持文件系统的移动信息设备还有限,因此Record Management System是J2ME开发人员实现本地数据存储的首选途径。本文的目的就是全面的介绍Record Management System的知识。       顾名思义Record Managemen

mingjava的专栏 6563

通过实例说明J2ME通用联网框架的使用

      尽管目前的无线网络不够理想,手机联网还是给我们开发人员不小的震撼的。毕竟这真的是件神奇的事情,不是吗?本文将讲述如何应用J2ME平台中的通用联网框架开发联网的应用程序。       首先,必须说明一点:MIDP中规定,任何移动信息设备都必须提供通过http协议的支持,而像其他的通信方式例如socket是设备相关的。有些手机会支持,有些则不支持。这里只大概的说明一下http协议相关的内容

mingjava的专栏 5759

本人编写的《J2ME开发精解》已经由电子工业出版社出版

J2ME开发网站长詹建飞编写的《J2ME开发精解》一书已经陆续在各个书店和网上书店上架,本书由电子工业出版社出版,SUN中国技术社区推荐java用书。目录如下:J2ME开发精解詹建飞 编著2006年1月出版ISBN 7-121-02210-949.00元(含光盘1张)416页 内容简介本书介绍如何在支持J2ME的设备上开发MIDP应用程序,尤其针对MIDP

mingjava的专栏 5502

搭建WAP应用开发环境

J2ME开发网最近开辟了Java技术与WAP开发专题,专题将主要讲述WAP开发和Java技术中相互结合的部分。不再开辟新的文章栏目,如果网友发表WAP相关的技术请归入Java技术与WAP开发专题。    WAP(Wireless Application Protocal)是开放的协议,这与日本的I-MODE有所不同,后者是封闭的。WAP事实上是无线网络和Internet网络相结合的产物。本来的

mingjava的专栏 5147

关注J2ME Wireless Toolkit 2.2新特性

      2004.6.21,SUN发布了J2ME Wireless Toolkit2.2的beta版,看了它的新特性后,我感到莫名的兴奋。太多需要的东西在这里得到了支持。真想快点与大家分享这份快乐。       J2ME Wireless Toolkit2.2现在的模拟器是大屏幕的320*240,看上去就爽!色彩也从2.1版本的256色变成了4096色。这些只是外观,都已经让我们狂喜不已了。在

mingjava的专栏 5069
上一篇: J2ME开发网鼓励网友发表原创文章(有奖)
下一篇: 介绍J2ME可选包FileConnection
mingjava
博客等级 码龄24年 68粉丝 114原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值