标题：黑莓(BlackBerry)程序开发从入门到精通
基本信息
作者：黑莓专家组  
丛书名： 移动应用程序开发入门到精通
出版社：机械工业出版社
ISBN：9787111337362
出版日期：2011 年5月
开本：16开
页码：346
版次：1-1
编辑推荐
· 首本全面介绍黑莓开发的中文技术书籍
· 一线黑莓应用开发人员经验集萃
· RIM中国区总裁鼎力推荐
内容简介
《黑莓(blackberry)开发从入门到精通》涉及了blackberry开发的不同层面，主要内容包括：rim公司及blackberry简介，blackberry开发平台及其搭建，用户界面开发基础，用户界面之定制ui组件，把midlet移植到blackberry，网络连接，触摸屏编程，widget开发，blackberry多媒体开发，数据存储与共享，bes mds数据推送分析，消息提醒等。
通过阅读本书，您将能够 ：
· 入门：通过“第2章blackberry开发平台搭建”、“第3章用户界面开发基础”等入门章节，您可以了解blackberry开发环境的搭建过程和blackberry应用程序的基本开发方法，从而快速开始blackberry开发工作。
· 实践：通过“第6章网络连接”、“第7章触摸屏编程”、“第8章widget开发”等中级章节，您可以了解各种不同的应用开发方式以及不同功能模块的实现方法，从而掌握实际项目实施中所需要的实用技能。
· 精通：通过“第13章bes mds推送分析”、“第15章bis推送分析”、“第16章消息提醒”等高级章节，您可以了解blackberry推送机制以及blackberry推送应用的实现方法，从而掌握blackberry应用开发的精髓，成为blackberry应用开发的大师级人物。
无论您是blackberry开发的入门者，还是资深的blackberry开发者，都会从本书受益匪浅。
《黑莓(blackberry)开发从入门到精通》示例代码可以从华章公司网站免费下载。
作译者
邓明轩，毕业于中山大学国际贸易专业，因为个人兴趣自学计算机，于是“误入歧途”成为软件从业者，先后在IBM，RIM任软件工程师与技术经理，熟悉企业应用架构，喜欢技术挑战。
王志刚，（Jerry Wang）RIM公司技术经理。2004年，获得南京邮电大学计算机硕士学位。2004-2007年，就职于摩托罗拉中国研发中心，历任移动软件工程师/高级工程师/项目主管，负责motorola Linux手机平台和J2ME平台开发。2008-2010年，就职于趋势科技中国研发中心，历任资深软件工程师/项目经理，负责趋势科技手机杀毒软件
目录
推荐序
research in motion中国区总裁简介
黑莓专家组成员
前言
第1章 blackberry开发平台简介 1
1 1 rim公司及blackberry 1
1 2 blackberry开发平台 3
1 2 1 blackberry web开发 4
1 2 2 blackberry widget开发 5
1 2 3 blackberry java开发 6
1 2 4 blackberry主题和动画图形开发 6
1 2 5 模拟器 7
1 2 6 java代码签名工具 7
第2章 blackberry开发平台搭建 8
2 1 环境安装 8
2 1 1 blackberry jde plug-in for eclipse安装 8
2 1 2 升级到blackberry java sdk 6 0 13
2 2 hello world的开发 15
2 2 1 建立blackberry项目 16
2 2 2 创建包 17
2 2 3 创建主程序 18
2 2 4 对应用进行测试 21
2 3 主程序代码解析 26
2 4 应用的调试 28
2 4 1 使用模拟器进行调试 28
2 4 2 使用真机进行调试 30
2 5 应用的签名 33
2 5 1 签名介绍 33
2 5 2 签名申请 34
2 5 3 密钥安装 36
2 6 应用的部署 39
2 6 1 通过桌面管理器部署应用 39
2 6 2 通过jad文件部署应用 40
2 6 3 通过javaloader部署应用 41
第3章 用户界面开发基础 42
3 1 用户界面开发技术 42
3 1 1 java/blackberry ui技术 43
3 1 2 j2me/midp ui技术 43
3 1 3 widget技术 44
3 1 4 browser技术 45
3 1 5 svg tiny技术 46
3 2 hello world 界面程序 47
3 2 1 创建应用 47
3 2 2 主程序 51
3 2 3 创建屏幕 52
3 2 4 关闭屏幕 53
3 2 5 为程序添加图标 54
3 3 field字段 55
3 3 1 将字段添加至屏幕 56
3 3 2 字段样式 57
3 3 3 使用字段 58
3 3 4 事件处理 60
3 4 manager布局管理器 61
3 4 1 垂直布局管理器和水平布局管理器 62
3 4 2 排列ui组件 62
3 5 screen屏幕 63
3 5 1 screen类 64
3 5 2 显示screen的几种方法 65
3 5 3 对话框 67
3 5 4 菜单项 68
3 5 5 事件处理 69
3 6 更多ui开发提示 72
3 6 1 设置屏幕的背景色 72
3 6 2 invokelater延时显示 72
3 6 3 后台更新屏幕显示 73
第4章 定制用户界面组件 75
4 1 定制字段 75
4 1 1 如何定制字段 75
4 1 2 超文本按钮 76
4 1 3 图形命令按钮和媒体播放器 81
4 1 4 进度动画字段 84
4 1 5 小结 86
4 2 定制布局管理器 87
4 2 1 如何定制布局管理器 87
4 2 2 标签页 87
4 2 3 等宽摆放字段的布局管理器 92
4 2 4 可滚动的纵向按钮列表 93
4 2 5 不换行的单行文本输入域 97
4 2 6 指定宽度并且有边框的输入域 98
4 3 九宫格 100
4 3 1 九宫格实现的初步分析 100
4 3 2 九宫格程序系统结构 101
4 3 3 九宫格系统实现 105
第5章 把midlet移植到blackberry 107
5 1 使用rapc直接转换midlet 107
5 2 在blackberry开发环境中导入midlet
项目 109
5 3 键盘适配 113
5 3 1 键盘类型 113
5 3 2 左右软键的处理 115
5 3 3 滚轮操作的映射 117
5 3 4 其他按键操作 118
第6章 网络连接 120
6 1 连接http或socket的5种方式 120
6 2 中国移动的wap网关连接技巧 124
6 3 中国电信的wap网关连接分析 126
6 4 自动选择网关的解决方案 126
6 5 网络连接常用到的api示例 128
第7章 触摸屏编程 130
7 1 触摸屏编程和设计的要求 130
7 2 触摸屏应用界面的示例 131
7 3 屏幕视图方位切换 134
7 4 触摸事件类型 140
第8章 widget开发 142
8 1 一个widget应用 142
8 2 widget应用扩充 146
8 2 1 widget类扩充 148
8 2 2 widget扩充发布 154
第9章 多媒体开发 159
9 1 创建播放应用 159
9 1 1 播放器 159
9 1 2 第一个播放程序 161
9 1 3 获取支持的音频格式 161
9 1 4 装载媒体资源 161
9 1 5 音量调节 162
9 1 6 发送与接收播放器事件 163
9 1 7 播放mp3实例 163
9 2 多种媒体播放方式 171
9 2 1 播放视频 172
9 2 2 播放流媒体 174
9 2 3 在浏览器中播放音频 175
9 2 4 在浏览器中播放视频 176
9 3 拍照功能 176
9 3 1 设定照片规格 176
9 3 2 启动摄像头 177
9 3 3 照相 178
9 4 视频录制 179
9 4 1 选定视频格式及编码 179
9 4 2 录制与存储视频 180
9 4 3 回放视频 183
9 4 4 音频录制 183
第10章 数据存储与共享 185
10 1 使用rms进行存储 185
10 2 使用runtimestore进行存储 187
10 3 使用persistentstore进行存储 188
10 4 使用sqlite进行存储 189
10 5 使用全局事件来进行应用交互 191
第11章 蓝牙编程 193
11 1 蓝牙概念与体系结构 193
11 1 1 蓝牙api介绍 193
11 1 2 蓝牙协议 194
11 1 3 蓝牙功能简表 195
11 1 4 蓝牙客户端与服务端模式 195
11 2 蓝牙客户端 195
11 2 1 搜索蓝牙设备 196
11 2 2 搜索服务 198
11 2 3 获取连接url 200
11 2 4 建立连接 200
11 3 蓝牙客户端的三种连接方式 200
11 3 1 spp连接方式 201
11 3 2 l2capconnection连接方式 202
11 3 3 obex连接方式 202
11 4 蓝牙服务端 204
11 4 1 启动蓝牙spp服务 205
11 4 2 启动蓝牙l2cap服务 206
11 4 3 启动蓝牙obex服务 207
第12章 bes mds数据推送 209
12 1 推送介绍 209
12 2 ecl介绍 211
12 3 ecl环境配置 212
12 4 ecl测试过程 213
12 4 1 启动mds模拟器 213
12 4 2 启动手机模拟器 215
12 4 3 在手机模拟器上安装客户端软件 215
12 4 4 执行推送命令 216
12 4 5 在手机模拟器上查看推送信息 217
12 4 6 修改excel表的内容 218
12 4 7 再次执行推送命令 218
12 4 8 查看新的内容 218
12 5 手机端代码导入eclipse 219
12 6 核心代码分析 222
12 6 1 推送架构 222
12 6 2 ecl系统架构 222
12 6 3 ecl服务器代码分析 223
12 6 4 ecl客户端代码分析 227
12 7 常见问题处理 232
第13章 bes mds推送分析 234
13 1 概述 234
13 2 mds推送介绍 234
13 2 1 mds推送架构 234
13 2 2 数据推送命令格式 235
13 2 3 数据推送关键代码 237
13 2 4 客户端接收关键代码 240
13 2 5 异步确认消息接收代码 243
13 3 推送细节分析 244
13 3 1 mds推送的整体时序 245
13 3 2 推送请求到达mds/bes服务器 246
13 3 3 推送请求检查 247
13 3 4 mds/bes中的推送队列 249
13 3 5 手持设备端对推送数据的处理 252
13 3 6 异步确认消息 253
13 4 数据推送的可靠性 257
13 4 1 应用依赖和非应用依赖的比较和选择 257
13 4 2 mds接收线程限制的处理 257
13 4 3 mds推送队列限制的处理 258
13 4 4 手持设备端接收队列的处理 259
13 4 5 应用依赖的客户端 259
13 4 6 异步确认消息处理 259
13 5 os 5 0新的推送api 260
第14章 bis推送服务 263
14 1 bis推送介绍 263
14 2 免费与付费选项 265
14 3 push service sdk介绍 266
14 4 工作原理与系统要求 267
14 5 申请push service账号 268
14 6 基础软件安装 269
14 7 安装blackberry push service sdk 270
14 8 配置blackberry push service sdk服务器 274
14 9 编译客户端应用 275
14 10 blackberry push service测试 276
第15章 bis推送分析 282
15 1 整体架构 282
15 2 服务器端分析 288
15 2 1 开发包的组成 288
15 2 2 推送代码分析 289
15 2 3 推送api的构成 293
15 3 客户端分析 296
15 3 1 客户端注册与订阅 297
15 3 2 推送数据的响应 302
15 4 创建自己的服务器端应用 304
15 4 1 创建推送项目 304
15 4 2 创建推送应用 308
15 4 3 推送应用测试 311
15 5 创建自己的客户端应用 311
15 5 1 创建客户端项目 312
15 5 2 增加注册代码 313
15 5 3 增加消息侦听代码 315
15 5 4 客户端测试 315
第16章 消息提醒 317
16 1 应用程序图标 317
16 2 led灯 318
16 3 振动 319
16 4 提示音 319
16 5 消息指示器（indicator） 320
16 6 在系统的消息图标中加入应用程序 321
第17章 blackberry系统属性 325
第18章 blackberry 6及blackberry java sdk 6 0介绍 331
18 1 blackberry 6中的新功能 331
18 2 blackberry java sdk 6 0中新的变化 332
18 2 1 用户界面 332
18 2 2 手机交互的支持 338
18 2 3 图形和动画 340
18 2 4 基于位置的服务（lbs） 341
18 2 5 多媒体 343
18 2 6 应用程序集成 343
18 2 7 网络连接 345
18 3 系统需求 346
前言
自从BlackBerry进入中国以来，BlackBerry手机以独特的风格和强大的功能吸引了众多的追随者。不管是个人用户还是企业用户，一旦使用BlackBerry手机，他们都会喜欢上这款风靡于北美、欧洲，甚至可以说是世界各地的智能手机。同时，随着使用的不断深入，越来越多的中国用户提出了BlackBerry应用本地化的需求，他们需要更多的BlackBerry本地应用，以满足个人使用的需要和企业事务处理的需要。在这种需求的推动下，全国各地的开发人员开始努力工作，各种适合中国用户的BlackBerry应用相继产生。
由此，本书的作者们开始奔忙于各地，为合作伙伴们提供BlackBerry开发的技术支持。这种工作是快乐的，因为我们可以为别人提供帮助，因为我们可以和合作伙伴们分享新应用诞生的喜悦。同时，这种工作也是痛苦的，因为我们需要和工程师一起面对困难，因为我们要和合作伙伴们分担应用不断推迟发布的焦虑。然而，让我们感触最深的是，很多BlackBerry开发人员都是守着英文的API说明文档工作，因为BlackBerry开发的中文资料特别少。于是，本书的作者们决定用业余时间编写和翻译BlackBerry开发文档，最终形成了本书。
本书涉及了BlackBerry开发的不同层面，主要内容包括：RIM公司及BlackBerry简介，BlackBerry开发平台及其搭建，用户界面开发基础，用户界面之定制UI组件，把Midlet移植到BlackBerry，网络连接，触摸屏编程，Widget开发，BlackBerry多媒体开发，数据存储与共享，BES MDS数据推送分析，消息提醒等。所以，本书既适合BlackBerry开发的入门者，也适合资深的BlackBerry开发者。书中有关环境搭建、基本应用编程的内容可以帮助入门者快速掌握BlackBerry开发技术。资深的BlackBerry开发者也可以在BES推送分析等章节找到有帮助的信息。书中配有大量插图，图文并茂，帮助读者更直观地理解相关内容。在讲解每项技术问题的内容中，插入了相关的代码段，供读者学习，加深对BlackBerry技术的理解和体会。
本书第1章由蒋尉编写，第2、12、13、14、15 章由邓明轩编写，第3、4章由杨江编写，第5、7、8、10章由王志刚编写，第6、16、18章由王恒进编写，第9、11、17章由俞伟编写。
对于开发工程师出身的我们而言，拾掇文字远远比拾掇代码要来得困难，于是几位兄弟们在一个个夜晚里，对着一幅幅截图，对着一段段的文字考验着自己的耐心。这种时候才明白为什么别人的书总会在前言里写着感谢支持者的话，因为没有身边的家人、朋友和同事的理解和支持，写书这种事情确实是很难坚持下去的。因为是合作写的书，要感谢的人在这里就不一一列出了，由各位作者亲自表示感谢。当然，这本书的成功出版还需要感谢RIM中国公司的各位领导和机械工业出版社的各位编辑，没有他们，这本书就不可能从一个个字节变成一行行铅字。
最后要真诚地对各位读者说，因为时间的限制和作者自身知识水平的限制，本书一定会有疏漏和不足的地方，望各位读者多多包涵，也欢迎各位来信指出。
黑莓专家组
序言
亲爱的中国黑莓开发者们：
我们为能向您介绍《黑莓(BlackBerry)开发从入门到精通》一书感到非常激动，它是第一本为中国黑莓开发者设计的中文教材，希望这本书可以成为您开发黑莓平台应用程序的良师益友。
通过这本书，您将会发现黑莓的开发平台已经发生了许多振奋人心的变化，包括BlackBerry 6（即将升级到6 1版）操作系统和获得改进的各种BlackBerry API。同时，黑莓的开发平台仍在不断地创新与完善中，包括WebWorks（支持HTML 5）、BBM（BlackBerry Messenger，黑莓专属的即时通信工具）和即将到来的PlayBook、QNX操作系统、Adobe Air和App World等，真是太令人期待了！
谢国睿
Research In Motion中国区总裁简介
谢国睿（Gregory Shea）于2008年加盟RIM公司，担任亚太区政府关系副总裁，现任Research In Motion (RIM) 中国区总裁。他是中国IT行业公认的领导者，拥有近20年在通信及互联网行业的丰富经验，在亚太区和中国区的私营和公共企业中的财经事务关系、市场推广、公共事务、政府关系及风险投资等多个领域担任重要角色。
谢国睿先生拥有加拿大英属哥伦比亚大学（University of British Columbia）理科硕士学位，他于1987年以中国政府特邀外国专家的身份来到中国。此后，他加入加拿大外交部，在韩国首尔（负责科学与技术、媒体和学术关系方面的工作）和中国香港（负责经济与财务关系）任职。
谢国睿先生拥有加拿大和爱尔兰双重国籍，现与妻子和两个孩子在北京居住。他精通英语、汉语及法语，对中国文化有着深厚的了解。