J2ME手机开发入门[按需印刷]

更多详情

内容简介: 本书由浅入深、循序渐进地介绍了用J2ME进行手机应用开发中各关键技术的实现方法和技巧。在叙述过程中以一般开发人员开发的顺序为主线,逐一介绍每一项内容的具体实现方法,包括开发环境、界面设计、多媒体技术、游戏开发、3D图形开发、短消息、网络开发、文件系统开发及通信接口的开发等内容,同时给出了每一个关键技术相应的实例程序,以帮助读者能将所学知识更快地应用到实际应用中。.
本书适合希望学习Java手机编程的初学者,也可作为手机程序开发人员的参考用书。...

目录: 第1章 Java语言.
1.1 Java基本语法
1.1.1 变量、常量和数据类型
1.1.2 Java程序的注释
1.1.3 表达式和运算符
1.1.4 字符串运算
1.1.5 数组
1.2 条件语句
1.3 分支语句
1.4 循环语句
1.4.1 for循环
1.4.2 while循环
1.4.3 do-while循环
1.4.4. 跳转语句
1.5 面向对象编程技术
1.5.1 对象和类概述
1.5.2 对象的成员
1.5.3 访问修饰符
1.5.4 成员的重载和覆盖
1.5.5 包和接口
1.5.6 this、super和null变量
1.6 异常处理机制
1.6.1 异常概述
1.6.2 异常的捕获和抛出
1.6.3 自定义异常
1.7 小结
第2章 J2ME概述
2.1 J2ME中的常用概念
2.1.1 J2ME嵌入式开发概述
2.1.2 J2ME和J2SE的关系
2.1.3 KVM,CVM和JVM
2.1.4 CLDC配置
2.1.5 MIDP简表
2.2 MIDlet定义
2.2.1 MIDlet定义
2.2.2 MIDlet的生命周期
2.3 Motorola的J2ME手机开发包
2.3.1 Motorola的J2ME手机开发包的下载和安装
2.3.2 Motorola的J2ME手机开发包的目录结构
2.3.3 Motorola的J2ME手机开发包的模拟器
2.4 创建一个简单MIDlet
2.4.1 创建一个简单的MIDle
2.4.2 Manifest文件编写
2.4.3 JAD文件编写
2.4.4 测试和运行MIDlet程序
2.5 技巧集锦
2.5.1 浮点运算错误
2.5.2 如何检查Motorola手机支持的API的
2.6 小结
第3章 NetBeans开发环境
3.1 下载和安装NetBeans
3.1.1 下载NetBeans开发工具
3.1.2 安装NetBeans集成开发环境
3.1.3 安装NetBeans Mobility
3.2 NetBeans开发环境
3.2.1 更新NetBeans系统
3.2.2 NetBeans菜单
3.2.3 NetBeans工具栏
3.2.4 代码编辑区
3.2.5 项目窗口
3.2.6 运行环境窗口
3.2.7 文件窗口
3.2.8 输出窗口
3.3 创建一个J2ME程序
3.3.1 WTK手机无线开发包
3.3.2 创建一个J2ME程序
3.4 MIDlet的调试技术
3.4.1 调试模式和断点设置
3.4.2 观测变量值
3.4.3 控制代码执行
3.5 在手机中运行程序
3.5.1 通过OTA下载到手机运行
3.5.2 通过数据线下载到手机运行
3.6 技巧集锦
3.6.1 MIDlet的安装步骤
3.6.2 Motorola T720内存使用
3.6.3 如何在NetBeans中添加Motorola M.3模拟器
3.7 小结
第4章 多线程技术
4.1 线程概述
4.1.1 线程的概念
4.1.2 线程生命周期
4.2 通过Runnable接口创建线程
4.2.1 实现Runnable接口
4.2.2 线程的运行和停止控制
4.3 Thread类
4.3.1 Thread类重要的属性和方法
4.3.2 通过Thread类实现线程
4.4 线程的同步
4.4.1 线程不同步的影响
4.4.2 线程同步方法
4.4.3 线程同步实例
4.5 线程的优先级
4.5.1 线程优先级概述
4.5.2 线程优先级实例
4.6 线程的等待和唤醒
4.6.1 等待和唤醒的方法
4.6.2 等待和唤醒实例
4.7 技巧集锦
4.7.1 如何防止线程死锁
4.7.2 如何进行通信
4.8 小结
第5章 设计简单的人机交互界面
5.1 用户界面设计概述
5.2 Display和Displayable类
5.2.1 Display类的使用方法
5.2.2 Display类应用实例
5.2.3 Displayable类
5..2.4 Displayable类应用实例
5.3 Screeb类和Ticker类
5.3.1 Ticker类
5.3.2 滚动条应用举例
5.4 TextBox类
5.4.1 TextBox的构造函数
5.4.2 文本处理
5.4.3 TextBox的输入约束
5.4.4 TextBox的最大值
5.5 Command类
5.5.1 Command类
5.5.2 CommandListener类
5.5.3 Command类应用举例
5.6 Alert和AlertType类
5.6.1 Alert类
5.6.2 AlertType类
5.6.3 Alert应用举例
5.7 技巧集锦
5.8 小节
第6章 列表风格界面设计
6.1 Item类
6.1.1 Item的派生类
6.1.2 Item的布局
6.1.3 Item的外观
6.1.4 Item的其他属性
6.1.5 与列表风格相关的接口
6.2 List类
6.2.1 重要属性和方法
6.2.2 应用举例
6.3 Form类
6.3.1 重要属性和方法
6.3.2 应用举例
6.4 TextField类
6.4.1 重要属性和方法
6.4.2 应用举例
6.5 ChoiceGroup类
6.5.1 重要属性和方法
6.5.2 应用举例
6.6 技巧集锦
6.7 小节
第7章 高级用户界面
7.1 使用Gauge
7.1.1 重要属性和方法
7.1.2 应用举例
7.2 使用ImageItem
7.2.1 重要属性和方法
7.2.2 应用举例
7.3 使用StringItem
7.3.1 重要属性和方法
7.3.2 应用举例
7.4 使用DateField
7.4.1 TimeZone类
7.4.2 Date类
7.4.3 Calendar类
7.4.4 DateField重要属性和方法
7.4.5 应用举例
7.5 技巧集锦..
7.5.1 如何实现版权闪现窗口
7.5.2 Alert对话框中使用进度条
7.6 小结
第8章 图形和动画界面开发
8.1 Canvas画布屏幕
8.1.1 画布使用基本框架
8.1.2 键盘事件处理
8.1.3 画布大小
8.1.4 指针事件处理
8.1.5 全屏模式9
8.1.6 应用举例
8.2 绘制基本图形和文本
8.2.1 Graphics类
8.2.2 文本绘制方法
8.2.3 基本的绘制和填充函数
8.3 图像显示和处理
8.4 简单动画的实现
8.4.1 通过线程实现动画
8.4.2 通过定时器实现动画
8.4.3 通过callSerially()方法实现动画
8.4.4 应用举例
8.5 技巧集锦
8.5.1 双缓冲技术
8.5.2 Motorola手机键值的变化
8.6 小节
第9章 多媒体技术开发
9.1 声音和音乐播放
9.1.1 J2ME对声音和音乐的支持
9.1.2 设定音调实例
9.1.3 不同格式音乐的播放实例
9.2 视频播放
9.2.1 播放视频方法
9.2.2 视频播放器开发实例
9.3 技巧集锦
9.3.1 同时播放两个WAVE文件时的异常
9.3.2 Motorola V600支持的媒体格式
9.4 小节
第10章 动画及游戏开发
10.1 游戏画布GameCanvas
10.1.1 重要属性和方法
10.1.2 处理游戏循环
10.1.3 GameCanvas引用实例
10.2 游戏精灵Sprite
10.2.1 动画帧控制
10.2.2 游戏精灵碰撞检测
10.2.3 “精灵”的移动和转动
10.2.4 应用实例
10.3 游戏图层3
10.3.1 游戏图层
10.3.2 动画实现
10.4 图层管理
10.4.1 层的安排
10.4.2 地图滚动控制
10.5 技巧集锦
10.5.1 如何减小程序的大小
10.5.2 如何提高游戏的执行效率
10.6 小节
第11章 3D图形程序开发
11.1 3D程序框架
11.2 通过顶点坐标生成简单的3D物体
11.2.1 生成3D物体
11.2.2 旋转3D物体
11.2.3 简单3D物体生成实例
11.3 导入3D图形文件
11.3.1 Loader类
11.3.2 导入3D图形文件实例9
11.4 3D显示特效雾化效果实现
11.4.1 Fog类
11.4.2 雾化效果实例
11.5 小节
第12章 Messaging应用开发
12.1 设置WTK中的WMA参数
12.2 使用WMA控制台发送消息
12.2.1 发送文本消息
12.2.2 发送小区广播
12.2.3 发送多媒体MMS消息
12.3 发送和接收文本消息
12.3.1 SMS系统概述
12.3.2 发送消息
12.3.3 接收消息
12.3.4 发送和接收文本消息实例
12.4 发送和接收二进制消息
12.4.1 二进制消息发送和接收
12.4.2 发送和接收二进制消息实例
12.5 发送和接收多媒体消息
12.5.1 MultipartMessage
12.5.2 MessagePart
12.6 技巧集锦
12.6.1 小区广播的接收和发送
12.6.2 在线程中接收短信
12.6.3 如何在Motorola SDK中模拟短信的发送
12.7 小节
第13章 基于HTTP协议的网络开发
13.1 网络开发基础知识
13.2 Connector接口
13.3 连接Web服务器
13.3.1 HttpConnection和HttpsConnection
13.3.2 连接Web服务器的方法
13.4 从服务器Get数据
13.5 向服务器Post数据
13.6 技巧集锦
13.6.1 设置Motorola手机
13.6.2 在WTK中使用代理
13.6.3 使用WTK的网络监视器
13.7 小节
第14章 Socket编程
14.1 Socket编程概述
14.2 SocketConnection
14.3 ServerSocketConnection
14.4 Socket客户端开发
14.5 Socket服务器端程序开发
14.6 技巧集锦
14.6.1 Motorola Accompli 008/A6288的网络支持
14.6.2 Socket客户端超时设置
14.6.3 Motorola的哪些手机支持ServerSocketConnection
14.7 小节
第15章 串口通信开发
15.1 串口通讯的基本概念
15.1.1 RS-232物理特性
15.1.2 串口通信的基本概念
15.2 获取可以利用的串口
15.3 进行标准串口连接
15.3.1 程序连接方法
15.3.2 连接测试方法
15.4 发送和接收数据
15.5 标准串口开发实例
15.6 技巧集锦
15.6.1 如何获得最大传输速率
17.5.2 摩托罗拉T720, T721, T720i支持串口API吗
15.7 小节
第16章 红外数据传输
16.1 红外概述
16.2 通过逻辑串口进行红外通信
16.3 通过IrOBEX进行通讯
16.3.1 IrOBEX协议概述
16.3.2 IrOBEX协议客户端开发
16.3.3 IrOBEX协议服务器端开发
16.4 红外OBEX开发实例
16.5 技巧集锦
16.5.1 通过红外安装MIDlet
16.5.2 如何设置WTK的红外OBEX参数
16.6 小节
第17章 文件系统开发
17.1 输入/输出流控制
17.1.1 输入/输出流的分类
17.1.2 输入流重要属性和方法
17.1.3 输出流重要属性和方法
17.2 文件系统操作API
17.2.1 FileConnection接口
17.2.2 其他API
17.3 文件浏览器开发实例
17.3.1 MIDlet类
17.3.2 确认对话框ConfirmDialog
17.3.3 FileExplorer类和成员变量定义
17.3.4 文件和文件夹的访问
17.3.5 创建文件
17.3.6 删除文件
17.3.7 读取文件数据
17.3.8 访问文件的属性
17.3.9 文件的复制
17.3.10 文件的剪切
17.3.11 文件的粘贴
17.4 技巧集锦
17.4.1 签名运行
17.4.2 MIDlet JAD文件属性
17.5 小节
附录A CLDC 1.0应用程序编程接口...

前言: J2ME(Java 2 Micro Edition)是专门用于手机等嵌入式设备开发的Java语言,使用J2ME开发的手机程序可以在不同的软件和硬件平台上运行。J2ME是手机程序开发初学者首选的开发语言。.
随着Java手机的应用越来越广,越来越多的程序员开始学习J2ME,这使得J2ME逐渐成为了一种非常流行的开发语言。在后PC时代,一些程序员将转为进行嵌入式开发,作为嵌入式开发语言的J2ME将会受到更多开发人员的青睐。在这种技术背景下,笔者依据自己多年的开发经验,编写了本书,并希望能够抛砖引玉,使读者快速进入J2ME的世界。
本书通过17章内容向读者介绍了J2ME手机程序开发中常用技术的开发方法,内容详实、结构紧凑,涵盖的技术知识繁多,具体的安排如下。
第1章 Java语言。介绍了进行J2ME开发前应掌握的Java语言的基本知识,包括基本的数据类型、基本语句结构及异常处理机制等内容。
第2章 J2ME概述。介绍了有关J2ME的知识,包括常用概念、MIDlet的定义等内容,最后通过一个简单的实例演示J2ME开发的一般过程。
第3章 NetBeans开发环境。介绍了NetBeans的下载、安装方法,MIDlet的调试技术及NetBeans的开发环境。
第4章 多线程技术。介绍了Java中的多线程技术。前面这几章是手机开发的基本内容,只有掌握了以上几章后才能够进行后面的学习。
第5章 设计简单的人机交互界面。本章介绍了Display、Screen、TextBox、Command、Ticker和Alert 5个图形界面开发中常用的类,在每一个类的介绍中都列举了相应的实例代码。
第6章 列表风格界面设计。本章分别介绍了一些用于实现用户界面中列表风格组件的类,分别为Form、List、TextField和ChoiceGroup。
第7章 高级用户界面。本章介绍了在高级用户界面设计中需要用到的几个类,包括Guage(进度条)、ImageItem(图像选项)、StringItem(字符串选项)和DateField(日期域)等。
第8章 图像和动画界面开发。本章首先介绍Canvas画布的基本使用方法,然后介绍通过Graphics类绘制基本图形、输出文本信息和显示图像的方法,最后介绍了简单动画的3种实现方法。
第9章 多媒体技术开发。本章首先介绍了MIDP和JSR 135对于媒体播放的支持,然后介绍了视频播放的方法,并给出了一个视频播放的实例程序。..
第10章 动画及游戏开发。本章首先介绍了游戏画布GameCanvas的使用方法,这是游戏开发的基础,然后介绍了游戏精灵Sprite的使用方法,最后介绍了LayerManager类的图层管理和地图滚动的实现方法,在有多图层和大地图的应用程序中这部分内容非常有用。
第11章 3D图形程序开发。本章首先介绍3D程序的基本框架,然后介绍了如何通过顶点坐标生成3D物体和控制3D物体旋转的方法,最后介绍了一个3D的特效实现,即雾化效果的实现。
第12章 Messaging应用开发。本章首先介绍配置WTK中的WMA控制台的方法,然后介绍了发送和接收短消息的方法,并在此基础上进一步介绍了发送接收二进制消息和多媒体消息的方法。
第13章 基于HTTP协议的网络开发。本章首先介绍了网络开发中经常使用的一些基本概念,然后介绍了Connector接口和HttpConnection接口,最后通过实例介绍了使用GET和POST方法访问服务器的方法。
第14章 Socket编程。本章介绍了开发Socket服务器和客户端的方法,并给出了一个简单的客户/服务器聊天的实例程序。
第15章 串口通信开发。本章首先介绍如何获取手机中可以利用的串口,然后介绍标准的串口的连接和数据传输方法,最后给出一个实例演示如何利用串口进行数据的传输。
第16章 红外数据传输。本章首先介绍红外的基本概念,在此基础上介绍利用红外进行逻辑串口的通信方法。然后介绍利用IrOBEX协议进行对象交换,最后给出了一个基于IrOBEX协议进行通讯的实例。
第17章 文件系统开发。本章首先介绍输入/输出流,然后介绍JSR 75中关于文件系统的API,最后通过一个实例演示了如何使用这些API对文件系统进行访问。
本书内容由浅入深、循序渐进,是手机程序开发初学者不可缺少的参考、学习用书。
由于编写时间较为仓促,而且编者水平有限,书中难免会有疏漏和不足之处,恳请广大读者提出宝贵意见。...
编者
2006年2月

序言: 从2004年我创办J2ME开发网(http://www.j2medev.com)以来,认识了很多这个领域中的朋友,本书的作者Robin就是其中之一。今年在策划由Motorola公司和SUN&司共同发起、由J2ME开发网承办的“新亮点移动应用挑战赛”的过程中,我和Robin~了更多的接触,我感受到Robin是一个工作认真、思维敏捷、在J2ME开发领域具有多年经验的工程师,能为他的作品写序我感到非常的荣幸。.
J2ME作为运用广泛的移动开发技术,为第一代开放式移动应用程序提供了平台。目前随着J2ME技术的发展、完善和手持设备的不断进步,该技术又出现了新的发展契机。运用最新的J2ME技术可以开发更加友好和强大的开放式移动应用程序,为广大的手机用户提供更丰富的增值服务。
这本介绍J2ME技术的书籍,内容非常丰富,基本上覆盖了手机应用程序开发的各个领域,包括基础知识、开发环境、多线程技术、界面设计、动画和游戏、多媒体、文件系统、短消息、通信接口等内容。对于希望学习J2ME开发的读者,这无疑是一本很好的参考用书。..
我不喜欢没有注释的代码,不少的书中都有类似的问题。要知道,在实际工作中没有注释的代码将给项目带来不小的阻力。本书中的代码注释非常清楚,这使得读者在学习过程中可以非常容易地理解程序代码的含义。另外我得知书中的全部代码都可以从网站上下载,这对于读者来说一定是好消息。
我认为作者凭借多年来从事J2ME领域开发和咨询工作的经验,以缜密的思路、流畅的文笔编写的这本书是非常具有参考价值的,对于初学者或者进阶的开发者来讲都会有不小的帮助。...
詹建飞
J2ME开发网CEO