图书目录

目    录

第1章  Android概述 1

1.1  什么是Android 2

1.1.1  移动信息设备分类 2

1.1.2  Open Handset Alliance

和Android 3

1.2  Android简介 5

1.2.1  Android的历史 5

1.2.2  Android的版本介绍 6

1.2.3  Android的未来 8

1.3  Android平台的技术架构 9

1.4  Android应用程序的构成 11

1.4.1  活动(Activity) 11

1.4.2  广播(Broadcast) 11

1.4.3  服务(Service) 11

1.4.4  内容提供器(Content 

Provider) 12

1.5  Android的网上资源 12

1.6  本章习题 13

第2章  Android开发环境与开发工具 15

2.1  Java开发组件的安装和配置 16

2.1.1  安装Java开发工具包 17

2.1.2  配置Java开发组件 18

2.2  软件开发组件的下载和安装 20

2.2.1  下载Android软件开发

工具包 20

2.2.2  安装Android软件开发

工具包 21

2.3  使用Android SDK开发Android

应用 23

2.3.1  Android SDK的目录结构 23

2.3.2  使用Android SDK文档 24

2.3.3  Android SDK中的示例 24

2.3.4  使用Android SDK命令行 25

2.3.5  使用Android模拟器 26

2.4  Eclipse的下载和安装 28

2.4.1  下载Eclipse 29

2.4.2  安装Eclipse 29

2.4.3  安装和配置Android插件

(ADT) 30

2.5  使用Eclipse开发Android应用 34

2.5.1  使用Eclipse创建Android

项目 34

2.5.2  Eclipse中Android项目架构 35

2.5.3  Eclipse中Android项目的调试

和运行 36

2.5.4  创建一个Android应用:

Welcome Android 37

2.6  Android常用的开发工具 39

2.6.1  配置工具(AVD) 39

2.6.2  Android仿真器(Emulator) 39

2.6.3  图形化调试工具(DDMS) 40

2.6.4  命令行调试工具(ADB) 43

2.6.5  资源打包工具(AAPT) 45

2.6.6  获取日志工具(LogCat) 47

2.6.7  视图层次工具(Hierarchy 

Viewer) 47

2.7  上机实训 49

2.8  本章习题 49

第3章  Android编程基础 51

3.1  语言要素 52

3.1.1  注释 52

3.1.2  标识符 56

3.1.3  分隔符 57

3.1.4  关键字 58

3.2  数据类型 58

3.2.1  基本数据类型 59

3.2.2  引用数据类型 60

3.3  运算符和表达式 61

3.3.1  赋值运算符 62

3.3.2  算术运算符 63

3.3.3  关系运算符 64

3.3.4  位运算符 65

3.3.5  逻辑运算符 66

3.3.6  其他运算符 67

3.3.7  表达式与语句 68

3.4  控制语句 68

3.4.1  选择控制语句 68

3.4.2  循环控制语句 70

3.4.3  转移控制语句 71

3.5  数组 72

3.5.1  静态数组 72

3.5.2  动态数组 72

3.6  字符串 74

3.6.1  字符串的定义 74

3.6.2  常用的字符串方法 74

3.7  类和对象 76

3.7.1  类和对象的概念与定义 76

3.7.2  成员变量和方法 77

3.7.3  创建对象 78

3.7.4  构造函数 78

3.8  继承 79

3.8.1  继承的实现 79

3.8.2  成员变量的隐藏和方法的

重写 80

3.8.3  关键字super 80

3.9  多态 81

3.10  上机实训 82

3.11  本章习题 83

第4章  Android GUI开发 85

4.1  用户人机界面元素分类 86

4.1.1  视图组件(View) 86

4.1.2  视图容器组件(View Group) 86

4.1.3  布局组件(Layout) 87

4.1.4  布局参数(LayoutParams) 88

4.2  常用widget组件 88

4.2.1  文本框视图(TextView) 88

4.2.2  按钮(Button) 92

4.2.3  图片按钮(ImageButton) 93

4.2.4  编辑框(EditText) 95

4.2.5  多项选择(CheckBox) 98

4.2.6  单项选择(RadioGroup) 101

4.2.7  下拉列表(Spinner) 101

4.2.8  自动完成文本

(AutoCompleteTextView) 103

4.2.9  日期选择器(DatePicker) 104

4.2.10  时间选择器(TimePicker) 107

4.2.11  数字时钟(DigitalClock) 109

4.2.12  表状时钟(AnalogClock) 110

4.2.13  进度条(ProgressBar) 113

4.2.14  拖动条(SeekBar) 114

4.2.15  评分组件(RatingBar) 117

4.3  视图组件 120

4.3.1  图片视图(ImageView) 121

4.3.2  滚动视图(ScrollView) 129

4.3.3  网格视图(GridView) 134

4.3.4  列表视图(ListView) 134

4.4  菜单(Menu) 135

4.4.1  上下文菜单(Context Menu) 135

4.4.2  选项菜单(Options Menu) 138

4.4.3  基于XML的菜单结构 140

4.5  界面布局 141

4.5.1  线性布局(LinearLayout) 142

4.5.2  相对布局(RelativeLayout) 144

4.5.3  表格布局(TableLayout) 144

4.5.4  绝对布局(AbsoluteLayout) 145

4.6  上机实训 147

4.7  本章习题 147

第5章  Android编程基础 149

5.1  Activity的生命周期和栈管理机制 150

5.1.1  Activity生命周期 150

5.1.2  Activity栈管理机制 151

5.2  解析Activity的实现 152

5.2.1  创建Activity 153

5.2.2  启动另外一个Activity 155

5.2.3  Activity的启动模式 157

5.2.4  设置Activity许可 160

5.3  多个Activity应用 163

5.3.1  Activity间的消息传递 163

5.3.2  多Activity的Android应用 165

5.4  上机实训 169

5.5  本章习题 169

第6章  Android Service组件 171

6.1  Service的作用 172

6.2  解析Service的实现 173

6.2.1  创建Service 173

6.2.2  绑定一个已经存在的

Service 174

6.2.3  Service的生命周期 175

6.3  远程Service调用 180

6.3.1  创建一个AIDL文件 181

6.3.2  实现AIDL文件生成的Java

接口 184

6.3.3  客户端调用 184

6.4  系统服务 186

6.5  上机实训 187

6.6  本章习题 187

第7章  Android桌面组件 189

7.1  快捷方式 190

7.1.1  显示快捷方式到桌面 190

7.1.2  添加快捷方式到快捷方式

列表 191

7.2  Widget开发 193

7.2.1  Widget介绍 193

7.2.2  在桌面上添加Widget 194

7.2.3  Widget的开发流程 195

7.2.4  Widget的开发实例 196

7.3  上机实训 204

7.4  本章习题 204

第8章  Android程序间的通信 205

8.1  Intent 206

8.1.1  Intent介绍 206

8.1.2  Intent的启动机制 208

8.1.3  常用Intent Action 211

8.2  Broadcast中的Intent 212

8.2.1  发送广播Intent 212

8.2.2  接受广播Intent 214

8.3  应用实例详解:电话拨号程序 217

8.3.1  实例分析 218

8.3.2  实例实现 218

8.4  上机实训 223

8.5  本章习题 223

第9章  Android图形库 225

9.1  图形基础 226

9.2  2D绘图 228

9.2.1  多边形绘图 228

9.2.2  颜色和透明度 231

9.2.3  旋转 232

9.3  3D绘图 233

9.3.1  3D空间 233

9.3.2  纹理映射 234

9.3.3  光照和透明度事件 236

9.4  上机实训 238

9.5  本章习题 238

第10章  Android资源与国际化 239

10.1  Android资源 240

10.1.1  Android资源介绍 240

10.1.2  Android资源存储 241

10.1.3  Android资源分类 242

10.2  资源的创建和使用 243

10.2.1  创建资源 243

10.2.2  使用自定义资源 244

10.2.3  使用系统资源 259

10.3  资源国际化 260

10.4  上机实训 262

10.5  本章习题 262

第11章  Android中的数据存储 265

11.1  使用SharedPreference存储数据 266

11.1.1  访问SharedPreferences的

 API 266

11.1.2  使用XML存储

 SharedPreferences数据 269

11.2  使用文件存储数据 270

11.2.1  访问应用中的文件数据 271

11.2.2  访问设备中独立的文件

 数据 274

11.3  使用SQLite数据库存储数据 277

11.3.1  SQLite数据库简介 277

11.3.2  SQLite数据库操作 278

11.4  使用ContentProvider 284

11.5  上机实训 289

11.6  本章习题 289

第12章  Android通信业务开发 291

12.1  Wifi 292

12.1.1  WifiManager介绍 292

12.1.2  Socket和ServerSocket 293

12.1.3  Wifi的实现过程 294

12.1.4  应用实例:Wifi Socket数据

 传输 295

12.2  短消息 299

12.2.1  SmsManager介绍 299

12.2.2  短信业务的实现过程 300

12.2.3  应用实例:短信提示实现 301

12.3  电话 305

12.3.1  TelephoneManager介绍 305

12.3.2  电话业务实现过程 306

12.4  上网 309

12.4.1  使用WebView组件访问

 Internet 309

12.4.2  使用HttpComponents访问

 Internet 315

12.5  上机实训 317

12.6  本章习题 317

第13章  Android GPS业务开发 319

13.1  GPS工作原理 320

13.2  Android Location-Based API简介 321

13.3  Android模拟器支持的GPS定位

 文件 322

13.3.1  KML 322

13.3.2  NMEA 323

13.4  LocationManager和

 LocationProvider 324

13.4.1  LocationManager 325

13.4.2  LocationProvider 326

13.5  基于Google Map的应用 331

13.5.1  将定位信息传递给Google 

 Map 331

13.5.2  使用MapView下载显示

 地图 331

13.6  上机实训 334

13.7  本章习题 334

第14章  Android多媒体开发 337

14.1  多媒体开发组件 338

14.1.1  MediaPlayer 338

14.1.2  MediaRecorder 340

14.1.3  VideoView 341

14.2  播放音频媒体 342

14.3  录制视频媒体 343

14.4  播放视频媒体 345

14.5  上机实训 347

14.6  本章习题 348

第15章  Android NDK技术 349

15.1  NDK介绍 350

15.2  搭建NDK开发环境 351

15.2.1  安装环境 351

15.2.2  下载和安装NDK 352

15.2.3  下载和安装Cygwin 353

15.2.4  运行一个NDK程序 358

15.3  Android NDK开发 361

15.3.1  设计JNI接口 361

15.3.2  使用C/C++实现本地方法 365

15.3.3  编译文件实现 366

15.3.4  编译NDK程序 369

15.4  上机实训 370

15.5  本章习题 371

第16章  常见错误与分析 373

16.1  常见错误 374

16.2  捕捉错误 376

16.2.1  使用LogCat捕捉错误 376

16.2.2  使用断点捕捉错误 378

16.2.3  使用异常来捕捉错误 383

16.3  上机实训 386

16.4  本章习题 387

第17章  Android综合实例开发——     

 Android手机新浪微博 389

17.1 Android手机新浪微博功能需求 390

17.2  Android手机新浪微博设计

 和实现 391

17.2.1  OAuth认证 391

17.2.2  核心控制类的实现

 (MainService) 399

17.2.3  主页面的实现 405

17.2.4  子页面的实现 411

17.3  新浪微博功能演示 416