本书通过大量程序示例介绍了J2ME的知识,内容取材新颖,反映了当前J2ME技术的最新发展情况,如最新的技术规范MIDP2.0、MMA和WMA,最新的J2ME开发工具JBuilderX、WTK2.0等。
本书分为两篇:J2ME程序设计和JBuilderX移动开发。在J2ME基础知识部分,通过程序示例介绍了J2ME的基本概念、用户界面开发、存储系统和网络连接,另外还介绍了下一代无线Java技术的核心规范:MIDP 2.0、移动媒体API和无线消息API。在JBuilderX移动开发部分介绍了如何使用JBuilderX开发J2ME程序,其中还包括NTT DoCoMo的i-mode程序开发等。随书光盘内容为书中范例源文件。
第1篇J2ME程序设计
第1章概述3
1.1无线Java技术简介3
1.1.1Java2平台3
1.1.2J2ME平台简介4
1.2JBuilderX移动开发新增功能一览5
1.3学习J2ME的Internet资源6
1.4小结6
第2章J2ME平台7
2.1J2ME系统结构7
2.2CLDC8
2.2.1CLDC的软硬件需求8
2.2.2CLDC提供的功能9
2.2.3CLDC与标准Java语言的区别9
2.3MIDP10
2.3.1MIDP的软硬件需求11
2.3.2MIDP提供的功能11
2.3.3应用程序体系结构12
2.4小结13
第3章J2ME开发环境15
3.1WTK2.0环境15
3.1.1软件下载与安装15
3.1.2WTK2.0环境的使用16
3.2创建第一个J2ME应用程序18
3.2.1建立源文件18
3.2.2编译运行程序19
3.2.3代码分析20
3.3移动设备商开发环境21
3.3.1主要的移动设备商开发环境简介21
3.3.2诺基亚的Developer’sSuite安装与使用21
3.4JBuilderX移动开发环境24
3.4.1配置JBuilderX移动开发环境24
3.4.2创建一个新的工程27
3.4.3执行应用程序29
3.5小结32
第4章CLDC程序设计33
4.1CLDC类库33
4.1.1CLDC核心类库概述33
4.1.2java.lang34
4.1.3java.io36
4.1.4java.util37
4.2CLDC通用连接框架41
4.3小结45
第5章MIDP程序设计基础47
5.1MIDP应用程序的基本概念47
5.1.1MIDP应用程序模型47
5.1.2MIDlet47
5.1.3MIDlet打包机制49
5.1.4应用程序执行环境53
5.2MIDP程序设计基础54
5.2.1查询应用程序属性54
5.2.2使用资源文件54
5.2.3使用定时器55
5.2.4使用线程57
5.3小结60
第6章用户界面61
6.1用户界面API的结构61
6.2高层用户界面64
6.2.1高层用户界面API简介64
6.2.2TextBox64
6.2.3List66
6.2.4Alert71
6.2.5Form74
6.2.6Ticker76
6.2.7StringItem78
6.2.8ImageItem78
6.2.9TextField80
6.2.10DateField82
6.2.11ChoiceGroup84
6.2.12Gauge86
6.3高层用户界面的命令处理87
6.3.1简单的命令处理示例88
6.3.2Command和CommandListener90
6.3.3ItemStateListener93
6.4低层用户界面96
6.4.1低层用户界面API简介96
6.4.2图形绘制96
6.4.3低层用户界面事件处理99
6.5小结102
第7章网络连接103
7.1MIDP网络接口103
7.2使用HTTP网络连接105
7.2.1发送HTTP请求105
7.2.2接收HTTP响应106
7.3示例程序106
7.4小结113
第8章永久存储115
8.1MIDP记录管理系统115
8.2使用记录管理系统117
8.2.1管理记录存储集117
8.2.2向记录存储集中保存记录127
8.2.3从记录存储集中读取记录131
8.2.4删除记录134
8.2.5记录的过滤、比较、侦听和枚举136
8.3电话簿应用程序示例147
8.4小结155
第9章MIDP2.0新增功能157
9.1MIDP2.0概述157
9.2安全框架157
9.2.1MIDP2.0安全框架基本概念158
9.2.2WTK2.0安全实用工具161
9.3用户界面161
9.3.1项目命令161
9.3.2Form布局163
9.3.3CustomItem168
9.4游戏开发170
9.4.1MIDP2.0游戏开发API170
9.4.2游戏运行机制171
9.4.3创建动画角色175
9.4.4创建游戏背景181
9.4.5游戏场景管理184
9.5音频开发190
9.5.1音频功能基本概念191
9.5.2使用Manager191
9.5.3使用Player198
9.5.4使用Control199
9.6Push注册204
9.7网络连接205
9.7.1使用MIDP2.0Socket连接205
9.8OTA应用程序发布与下载209
9.8.1OTA系统的组成209
9.8.2OTA的生命周期210
9.8.3应用程序发布与下载演示213
9.9无线产业Java技术规范JTWI216
9.9.1目前无线Java所面临的问题与解决方案216
9.9.2JTWI基本内容217
9.10小结218
第10章移动媒体API219
10.1移动媒体API概述219
10.1.1移动媒体API的特性和系统结构219
10.1.2查询设备的媒体能力220
10.2视频媒体的播放223
10.2.1从不同数据源获得媒体223
10.2.2播放视频媒体223
10.3媒体录制232
10.3.1录音232
10.3.2摄像236
10.4小结237
第11章无线消息API239
11.1无线消息API概述239
11.1.1无线消息传递原理239
11.1.2无线消息API240
11.1.3WTK2.0无线消息实用工具242
11.2SMS消息收发245
11.3CBS消息接收253
11.4小结257
第2篇JBuilderX移动开发
第12章JBuilderX移动应用程序管理261
12.1创建和管理MIDP应用程序261
12.1.1使用ProjectWizard创建一个新的工程261
12.1.2向工程中添加MIDlet文件263
12.1.3设置MIDP工程的属性264
12.2应用程序的编译、运行和调试267
12.2.1编译应用程序267
12.2.2运行应用程序267
12.2.3在JBuilder中调试MIDlet269
12.3使用JBuilderX为MIDlet打包270
12.4OTA支持277
12.5混淆MIDlet类文件282
12.6使用JBuilderX开发J2MEPalm应用程序285
12.6.1PalmOS简介285
12.6.2在JBuilderX中设置J2MEPalm开发环境286
12.7小结287
第13章JBuilderX移动应用程序界面开发289
13.1JBuilderX用户界面设计器289
13.1.1设计器简介289
13.1.2添加、移动、删除和复制组件292
13.2设置组件的属性293
13.3控制布局294
13.4创建画布296
13.5使用Ticker297
13.6事件处理298
13.7使用图像299
13.7.1向Displayable中添加图像299
13.7.2使用图像作为MIDletSuite的图标301
13.7.3为MIDletSuite中的MIDlet设置图标301
13.8自定义组件调色板303
13.9组件初始化303
13.10小结303
第14章JBuilderX开发i-mode应用程序305
14.1i-mode简介305
14.2设置i-mode开发环境308
14.3开发i-mode应用程序311
14.3.1创建工程311
14.3.2程序的编译、运行和调试316
14.3.3应用程序部署318
14.4使用i-mode用户界面设计器325
14.5小结334
第15章JBuilderX移动开发综合实例——移动书店337
15.1移动书店程序的功能337
15.2J2EE体系结构简介339
15.3服务器端设计思路与代码分析343
15.3.1数据库设计343
15.3.2EJB344
15.3.3EJB测试客户端353
15.3.4Servlet356
15.4客户端设计思路与代码分析361
15.4.1BookStoreMIDlet361
15.4.2MainMenu362
15.4.3ISBNScreen364
15.4.4ResultScreen366
15.4.5ConfirmationScreen368
15.4.6ThankYouScreen372
15.4.7MIDPConnector374
15.5小结376
附录A本书光盘使用方法377
附录B本书程序清单379
参考文献382
关于本丛书
从来没有任何事物像互联网那样,对人类的活动产生如此深刻的影响,无论是政府、企业,以及个人,莫不如此。与此同时,IT产业也正面临着一场变革——由传统应用向基于Internet/Web的服务模式转化。
翻开历史,我们可以看到互联网的形成和发展以分布性、开放性和平台无关性为基础,这是Internet与生俱有的属性。随着互联网应用的发展,又引入了诸如RPC/COM/CORBA等技术,但这些技术在实际应用中,又存在着很多不足和局限。它们的特定协议也难以通过防火墙,因而不适于在Web上的应用开发。为了进一步开发基于Web的应用,相继出现了Sun公司的Sun ONE(Open Net Environment,开放网络环境)和Microsoft公司的.NET两大Web服务技术体系。其中,Sun ONE以Java技术为核心,更接近或者满足于互联网在智能化Web服务上对分布性、开放性和平台无关性的要求,同时其在健壮性、安全性、组件化等方面也更为成熟稳定,获得了众多IT厂商和产品的支持,是目前惟一在市场上得到了广泛应用的技术体系。
Sun ONE体系结构以Java语言为核心,包括J2SE/J2EE/J2ME,并基于一系列开放和流行标准、技术及协议。要特别指出的是,Sun ONE体系结构本身作为开放式体系结构,在得到IBM/BEA/Oracle/Sybase等这些IT巨擘支持的同时,更得到了互联网上Open Source社区的青睐。我们可以很容易地从网上免费获得和使用包括Java集成开发环境、Java数据库,甚至是中间件(Application Server)服务器等产品,以及它们的源代码。这对于加速国内中小企业的信息化建设和自有知识产权产品的开发、提高企业应用和软件行业的整体水平,无疑是一次难得的机会。
综观国内的技术发展,广大的Java程序开发人员及正在转向Java体系进行开发的技术人员虽然已面临这一令人激动的转型期,却苦于没有足够的相关资料和文献,尤其对国内的最新Java技术动态和技术现状知之甚少,而图书市场上Java的书籍尽管汗牛充栋,但精品罕见,能反映出J2EE及Sun ONE框架全貌的书籍更是奇缺。
电子工业出版社计算机图书研发部为进一步推动国内Java技术的应用与发展,不失时机地推出了《开发专家之Sun ONE》系列丛书。
本套丛书以Sun ONE整体架构为基础,全面体现了Sun ONE的技术核心——Java的应用开发。丛书从不同角度深入Java应用开发的各个层面,涵盖了Java技术的所有重要思想和实践,体现了最新的Java技术进展和动态,大幅度提升读者的理论和应用水平。同时,丛书重点突出实用性。书中引入了大量的行业应用范例,使读者不仅能快速掌握开发技能,而且对于开发者进行综合系统分析也有所裨益。
关于本书
随着移动通信产业的迅速发展,移动增值业务越来越受到人们的关注。J2ME(Java 2 微型版)是用Java语言为手机等移动信息设备开发软件的规范。由于Java语言的平台无关性,使得J2ME得到了大多数移动设备制造商的支持,包括摩托罗拉、诺基亚、西门子在内的手机厂商都推出了支持J2ME的手机。
本书分为两篇:J2ME程序设计和JBuilderX移动开发。在第1篇中,通过程序示例介绍了J2ME的基本概念、用户界面开发、存储系统和网络连接,另外还介绍了下一代无线Java技术的核心规范:MIDP 2.0、移动媒体API和无线消息API等。在本书第2篇中介绍了如何使用JBuilderX开发J2ME程序,其中还包括NTT DoCoMo的i-mode程序开发等,并给出了一个综合示例。
第1~2章主要介绍J2ME的系统结构。第3章介绍J2ME的开发环境,包括JBuilderX、J2ME WTK、诺基亚Developer’s Suite,并用一个简单的例子演示怎样运行J2ME应用程序。
从第4章开始介绍程序开发技术,介绍了CLDC程序设计,包括一些基本类库的使用和通用连接框架。第5章介绍了MIDP编程的基础知识和一些程序设计技术,如使用系统属性与资源、多线程编程等。第6章到第8章是MIDP编程的2个主要方面:第6章介绍了用户界面开发,包括高层用户界面和低层用户界面的使用,以及命令处理;第7章介绍了网络编程,主要演示在MIDP中使用HTTP网络连接;第8章介绍了如何使用MIDP的记录管理系统保存和读取数据。
第9章介绍了MIDP 2.0的新增功能,并在最后介绍无线产业Java技术规范JTWI,该规范定义了下一代无线Java兼容设备。第10章介绍了移动媒体API,它为J2ME设备上媒体的播放和录制提供了高层API接口。第11章介绍了无线消息API,它使J2ME应用程序可以利用无线网络的消息传递服务(如短信服务SMS和小区广播服务CBS)来接收和发送消息。
第2篇介绍JBuilderX为移动开发提供的支持。第12章介绍了程序的创建、打包、部署,以及混淆器的使用。第13章介绍了JBuilderX为移动开发提供的界面设计器。第14章介绍了i-mode应用程序开发,i-mode并不是标准的J2ME应用程序,本书只介绍如何使用JBuilderX开发简单的i-mode应用程序。第15章介绍了用JBuilderX开发的一个综合实例,该实例结合使用了J2ME和J2EE技术。
为了方便读者学习,随书光盘提供了程序源代码,并将相关资源文件做成可以在WTK 2.0下直接运行的形式,放在光盘的exe目录下,以供读者参考。
本书由飞思科技产品研发中心策划并组织编写。庄东、刘晓华、凌庆华、马研、徐方坡、罗强、李伟、孙鹏 、刘晓川、傅伟铮等人参加了本书的写作工作;周学平、任常秋、傅强、周健芝、杨聪负责收集相关资料;李景彬编写了本书中的部分示例;胡韬对书中的代码进行了测试;杨艳、熊薇出色的文字润色工作也使本书增色不少,在此对他们的努力和支持表示感谢,同时也感谢Borland公司对本书编写工作的支持。由于编者水平有限,编写时间紧迫,本书在取材、编写中可能还存在一些问题,对本书的不足之处,敬请读者批评指正。
我们的联系方式如下:
咨询电话:(010)68134545 68131648
答疑邮件:support@fecit.com.cn
服务网址:http://www.fecit.com.cn http://www.fecit.net
通用网址:计算机图书、FECIT、飞思教育、飞思科技、飞思
飞思科技产品研发中心