第1部分 走进Android的世界 2
第1章 认识Android 2
1.1智能手机的发展 2
1.2手机操作系统 3
1.3走进Android 5
1.4 Android的体系结构 8
1.5 Android应用程序框架 10
1.6本章小结 11
第2章 搭建Android开发环境 12
2.1下载并配置Android开发环境 12
2.2下载并配置ADT插件 15
2.3开发第一个Android项目 22
2.4打包Android程序 25
2.5本章小结 27
第2部分Activity程序开发 30
第3章 初识Activity 30
3.1 Activity简介 30
3.2 Android项目工作区的组成 31
3.3第一个Android程序 36
3.4第一个Android程序深入 41
3.5本章小结 43
第4章Android中的基本控件(上) 44
4.1 View组件简介 44
4.2文本显示组件:TextView 46
4.3按钮组件:Button 51
4.4编辑框:EditText 53
4.5单选按钮:RadioGroup 55
4.6复选框:CheckBox 57
4.7下拉列表框:Spinner 59
4.8图片视图:ImageView 64
4.9图片按钮:ImageButton 65
4.10时间选择器:TimePicker 66
4.11日期选择器:DatePicker 68
4.12本章小结 71
第5章 布局管理器 72
5.1 Android布局管理器简介 72
5.2线性布局管理器:LinearLayout 73
5.3框架布局管理器:FrameLayout 75
5.4表格布局管理器:TableLayout 77
5.5相对布局管理器:RelativeLayout 84
5.6布局管理器的嵌套 86
5.7绝对定位布局管理器:AbsoluteLayout 88
5.8本章小结 90
第6章Android事件处理 91
6.1事件处理简介 91
6.2单击事件 93
6.2.1认识单击事件 93
6.2.2实例1:简单的四则运算 96
6.2.3实例2:改变屏幕显示方向 100
6.2.4实例3:明文显示密码 104
6.3单选按钮与OnCheckedChangeListener 106
6.4下拉列表框与OnItemSelectedListener 108
6.5监听日期与时间的改变 112
6.6焦点事件 115
6.7长按事件 117
6.8键盘事件 119
6.9触摸事件 121
6.10本章小结 125
第7章Android中的基本控件(下) 126
7.1滚动视图:ScrollView 126
7.2 列表显示:ListView 128
7.2.1 ListView组件的基本使用 128
7.2.2 SimpleAdapter类 130
7.2.3 ListActivity类 136
7.2.4 ListView事件处理 139
7.3对话框:Dialog 143
7.3.1 AlertDialog和AlertDialog.Builder 144
7.3.2定制对话框和LayoutInflater 157
7.3.3日期对话框:DatePickerDialog 159
7.3.4时间对话框:TimePickerDialog 161
7.3.5进度处理对话框:ProgressDialog 164
7.4随笔提示文本:AutoCompleteTextView 168
7.5拖动条:SeekBar 170
7.6评分组件:RatingBar 176
7.7信息提示框:Toast 182
7.8图片切换:ImageSwitcher 186
7.9文本切换:TextSwitcher 191
7.10拖拉图片:Gallery 193
7.11网格视图:GridView 201
7.12时钟组件:AnalogClock与DigitalClock 206
7.13计时器:Chronometer 207
7.14标签:TabHost 213
7.15 菜单:Menu 223
7.15.1选项菜单:OptionsMenu 225
7.15.2上下文菜单:ContextMenu 229
7.15.3子菜单:SubMenu 231
7.16隐式抽屉组件:SlidingDrawer 234
7.17缩放控制:ZoomControls 237
7.18弹出窗口:PopupWindow 239
7.19树型组件:ExpandableListView 243
7.20本章小结 250
第3部分Android高级开发 252
第8章 数据存储 252
8.1 SharedPreferences存储 252
8.2文件存储 257
8.2.1利用Activity类操作数据文件 257
8.2.2利用IO流操作文件 259
8.2.3操作资源文件 264
8.2.4 DOM操作 266
8.2.5 SAX操作 272
8.2.6使用XMLPull解析 275
8.2.7 JSON数据解析 282
8.3 SQLite数据库存储 291
8.3.1数据库操作类:SQLiteDatabase 291
8.3.2数据库操作辅助类:SQLiteOpenHelper 293
8.3.3使用SQLite数据库并完成更新操作 295
8.3.4使用ContentValues封装数据 300
8.3.5数据查询与Cursor接口 301
8.3.6使用ListView滑动分页 307
8.3.7事务处理 313
8.4 ContentProvider 314
8.4.1 ContentProvider简介 314
8.4.2开发ContentProvider程序 318
8.4.3操作联系人的ContentProvider 333
8.4.4操作通讯记录的ContentProvider 337
8.4.5 SimpleCursorAdapter 340
8.5本章小结 341
第9章Android组件通信 342
9.1认识Intent 342
9.2 Intent深入 349
9.2.1打开网页 353
9.2.2调用拨号程序 355
9.2.3调用发送短信程序 357
9.2.4调用发送带图片的彩信程序 360
9.2.5发送Email 362
9.2.6调用ContentProvider 364
9.2.7创建操作Intent的选择器 365
9.3 Activity生命周期 368
9.4 ActivityGroup组件 376
9.5消息机制 392
9.5.1消息类:Message 392
9.5.2消息操作类:Handler 393
9.5.3消息通道:Looper 395
9.5.4时钟显示 401
9.5.5进度条组件:ProgressBar 403
9.5.6异步处理工具类:AsyncTask 408
9.6 Service 415
9.6.1 Service的基本组成 415
9.6.2绑定Service 419
9.6.3操作系统服务 427
9.7 PendingIntent 440
9.7.1发送通知:Notification 441
9.7.2 SMS服务 443
9.8广播机制:Broadcast 445
9.8.1认识广播 445
9.8.2通过Broadcast启动Service 451
9.8.3闹钟服务 454
9.9桌面显示组件:AppWidget 460
9.9.1 AppWidget的基本概念 460
9.9.2使用AppWidget跳转到Activity进行操作 466
9.9.3使用AppWidget进行广播 468
9.10本章小结 471
第4部分Android应用开发 474
第10章 多媒体技术 474
10.1绘制简单图形 474
10.2 Bitmap 478
10.3 Matrix 481
10.4 Animation动画处理 485
10.4.1 Tweened Animation 485
10.4.2定义动画速率:Interpolator 494
10.4.3动画监听器:AnimationListener 496
10.4.4通过XML文件配置动画 498
10.4.5 Frame Animation 505
10.4.6 LayoutAnimationController组件 507
10.5媒体播放 514
10.5.1播放MP3 517
10.5.2播放视频 521
10.6使用摄像头拍照 524
10.7媒体录制 530
10.7.1录制音频 532
10.7.2录制视频 537
10.8多点触控 550
10.9本章小结 554
第11章 手机服务 555
11.1取得电池电量信息 555
11.2声音服务:AudioManager 558
11.3电话服务 562
11.3.1对电话进行监听 562
11.3.2发现你的私人秘密:电话窃听器 565
11.3.3监视你的来电情况:偷偷发短信 569
11.3.4实现手机黑名单 572
11.3.5使用AIDL挂断电话 575
11.4短信服务 578
11.4.1判断短信发送状态 578
11.4.2监听短信 583
11.5传感器 585
11.5.1方位传感器——移动小球 587
11.5.2磁场传感器——指北针 589
11.6本章小结 592
第12章 网络通信 593
12.1与Web服务器交换数据 593
12.1.1通过地址重写访问动态Web 593
12.1.2使用POST提交访问动态Web 596
12.1.3读取网络图片 599
12.2与Socket交换数据 601
12.2.1完成简单的Echo程序 602
12.2.2上传文件 604
12.3与Web Service进行通信 611
12.3.1使用XFire搭建服务器端程序 611
12.3.2开发Android客户端访问Web Service 615
12.4 WebView组件 620
12.4.1加载网页 621
12.4.2控制WebView实现属于自己的浏览器 624
12.4.3通过HTML定义显示界面 628
12.4.4本地程序与JavaScript互操作 631
12.4.5使用JavaScript调用Android程序 635
12.5本章小结 637
第13章 定位服务 638
13.1配置Google APIs SDK 638
13.2位置管理器:LocationManager 640
13.3取得最佳的LocationProvider 645
13.4申请Google Map服务 648
13.5在地图上标记 653
13.5.1使用ItemizedOverlay在地图上定义一个位置标记 656
13.5.2使用MyLocationOverlay显示地图层 663
13.6 Geocode 667
13.7本章小结 681