《Android应用开发完全自学手册 核心技术、传感器、2D/3D、多媒体与典型案例》PDF下载

  • 购买积分:18 如何计算积分?
  • 作  者:吴亚峰,于复兴编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2012
  • ISBN:9787115272997
  • 页数:650 页
图书介绍:本书通过对Android核心模块的归纳,通过700多个实例,前面讲解读者在用Android开发过程中的实例,让读者在开发的每一步都可以得到实例的引导,以便尽快融入实战角色。

第1章 千里之行,始于足下——Android开发基础 1

1.1 Android开发基本知识概览 1

1.1.1 Android的发展史 1

1.1.2 Android基础架构详解 1

1.2 Android开发环境的搭建 4

1.2.1 AndroidSDK的安装与环境变量配置 4

1.2.2 Eclipse集成开发环境的搭建 4

1.2.3 Android模拟器的创建与使用 6

1.3初识Android应用程序 8

1.3.1创建第一个Android应用程序——Hello Android 8

1.3.2模拟器上调试Android应用程序 10

1.3.3实际设备的联机调试 12

1.4本章小结 13

第2章 必知必会的核心知识——Android应用程序的组成与结构 14

2.1应用程序的项目结构 14

2.1.1 Android应用目录剖析 14

2.1.2 Android应用中资源的使用 15

2.1.3 Android系统配置文件基本知识 16

2.1.4 Android的常用权限 17

2.2揭开Android系统神秘的面纱——深入Android系统 18

2.2.1 Android系统架构基本知识 18

2.2.2 Android应用程序生命周期详解 21

2.2.3 Activity组件的基本知识 22

2.2.4服务组件——Service的基本知识 24

2.2.5广播通知的组件——Broadcast-Receiver的基本知识 25

2.2.6 ContentProvider组件的基本知识 28

2.2.7 Intent组件和IntentFilter组件的基本知识 28

2.3本章小结 31

第3章 Android控件入门 32

3.1 Android控件类基本知识 32

3.1.1视图View概述 32

3.1.2 ViewGroup概述 35

3.2 Android文本控件 37

3.2.1文本框——TextView 37

3.2.2可编辑的文本框——EditText 40

3.2.3文本框使用案例 40

3.3 Android按钮控件 44

3.3.1按钮——Button基本知识 44

3.3.2按钮控件使用案例 45

3.4本章小结 48

第4章 炫酷的界面设计——Android布局管理 49

4.1线性布局——LinearLayout 49

4.1.1 LinearLayout基本知识 49

4.1.2线性布局案例 50

4.2帧布局——FrameLayout 53

4.2.1 FrameLayout基本知识 53

4.2.2帧布局案例 54

4.3表格布局——TableLayout 56

4.3.1 TableLayout基本知识 56

4.3.2表格布局案例 57

4.4相对布局——RelativeLayout 59

4.4.1 RelativeLayout基本知识 59

4.4.2相对布局案例 60

4.5布局管理器综合案例 62

4.6本章小结 66

第5章 磨刀不误砍柴功——Android控件必知必会 67

5.1图片按钮 67

5.1.1 ImageButton基本知识 67

5.1.2 ImageButton使用案例 67

5.1.3 9Patch图片基本知识与生成 69

5.2单选按钮与复选框 73

5.2.1 RadioButton和CheckBox基本知识 73

5.2.2单选按钮和复选框使用案例 73

5.3图片控件 77

5.3.1 ImageView基本知识 77

5.3.2图片查看器小案例——ImageView的使用 78

5.4状态开关控件及应用实例 81

5.4.1 ToggleButton基本知识 81

5.4.2开关控件使用案例 82

5.5时钟控件及应用实例 85

5.5.1 AnalogClock的基本知识 85

5.5.2 DigitalClock的基本知识 85

5.5.3时钟控件使用案例 86

5.6日期时间控件及实例 90

5.6.1 DatePicker基本知识 90

5.6.2 TimePicker基本知识 91

5.6.3日期时间控件使用案例 91

5.7动画播放技术 94

5.7.1帧动画(Frame Animation)基本知识 95

5.7.2帧动画(Frame Animation)使用案例 95

5.7.3补间动画(Tween Animation)基本知识 98

5.7.4补间动画(Tween Animation)使用案例 100

5.8本章小结 102

第6章 更上一层楼——Android控件进阶 103

6.1列表视图 103

6.1.1 ListView基本知识 103

6.1.2列表视图使用案例 104

6.2滚动视图 107

6.2.1 ScrollView基本知识 107

6.2.2滚动视图使用案例 107

6.3下拉列表控件 109

6.3.1 Spinner基本知识 109

6.3.2下拉列表使用案例 109

6.4滑块与进度条 112

6.4.1 ProgressBar基本知识 113

6.4.2 SeekBar基本知识 113

6.4.3滑块和进度条案例 113

6.5星级评分条 116

6.5.1 RatingBar基本知识 116

6.5.2星级评分条使用案例 116

6.6画廊控件 118

6.6.1 Gallery基本知识 118

6.6.2画廊控件使用案例 119

6.7网格视图 121

6.7.1 GridView基本知识 121

6.7.2网格视图使用案例 122

6.8选项卡 125

6.8.1 TabHost基本知识 125

6.8.2选项卡使用案例 125

6.9自动完成文本框 127

6.9.1 AutoCompleteTextView基本知识 127

6.9.2自动完成文本框使用案例 127

6.10控件的综合应用案例 129

6.10.1综合案例的功能简介 129

6.10.2主控制类的实现 130

6.10.3浏览相册界面的实现 133

6.10.4发表心情界面的实现 135

6.10.5查看日志界面的实现 137

6.11本章小结 140

第7章 友好地互动交流——Android菜单与对话框 141

7.1程序菜单的应用 141

7.1.1选项菜单基本知识 141

7.1.2选项菜单使用案例 143

7.1.3上下文菜单的使用 149

7.2对话框的应用 154

7.2.1初识对话框 154

7.2.2普通对话框的开发 156

7.2.3日期及时间选择对话框的开发 159

7.2.4多选按钮对话框的开发 165

7.2.5列表对话框的开发 169

7.2.6单选按钮对话框的开发 172

7.2.7进度条对话框的开发 176

7.3本章小结 180

第8章 Android下的多线程与事件处理机制 181

8.1 Android下的多线程 181

8.1.1与众不同的Android多线程 181

8.1.2初识Android消息传递员——Handler 181

8.1.3 Handler使用小案例 182

8.2基于监听接口的事件处理 184

8.2.1 Android事件处理模型 184

8.2.2 OnClickListener接口基本知识 185

8.2.3 OnLongClickListener接口基本知识 187

8.2.4 OnFocusChangeListener接口基本知识 190

8.2.5 OnKeyListener接口基本知识 192

8.2.6 OnTouchListener接口基本知识 194

8.2.7 OnCreateContextMenuListener接口基本知识 196

8.3基于方法重写的事件处理 199

8.3.1 onKeyDown与onKeyUp方法详解 199

8.3.2 onTouchEvent方法详解 202

8.3.3 onTrackBallEvent方法详解 206

8.3.4 onFocusChanged方法详解 211

8.4本章小结 214

第9章 多彩的应用实现——2D应用程序开发 215

9.1 SurfaceView的使用 215

9.1.1基本几何图形的绘制 215

9.1.2自定义图形的绘制 218

9.1.3 2D贴图技术 220

9.2用2D技术开发简单游戏 222

9.2.1显示界面类GameSurfaceView的开发 223

9.2.2控制小球运动——ThreadForGo类的开发 225

9.2.3记分线程——ThreadForTimeControl类的开发 227

9.2.4重新绘制界面——ThreadForDraw类的开发 227

9.2.5设置屏幕相关属性——GameActivity类的开发 228

9.3多屏幕分辨率问题的处理 230

9.3.1 Android开源带来的机遇与问题 230

9.3.2几种自适应屏幕的方式 230

9.4通过自定义View实现自己的控件 232

9.4.1 CustomView类的开发 232

9.4.2自定义View的添加和使用 234

9.4.3 Activity部分代码的开发 235

9.5本章小结 235

第10章 绚丽的游戏应用——3D应用开发 236

10.1 3D开发基础 236

10.1.1 OpenGL ES及OpenGL简介 236

10.1.2 3D基本知识介绍 237

10.1.3简单3D物体的绘制 238

10.1.4不同的绘制模式 243

10.1.5用索引数据进行3D物体的绘制 244

10.2两种不同的投影模式 246

10.2.1正交投影的基本原理 246

10.2.2透视投影的基本原理 251

10.3光照与材质 253

10.3.1光照的组成元素 253

10.3.2定向光与定位光 254

10.3.3法向量的基本知识 255

10.3.4材质的基本知识 255

10.3.5光照的基本案例 256

10.4纹理及纹理映射 261

10.4.1纹理映射的原理 261

10.4.2纹理映射的简单案例 261

10.4.3不同的纹理拉伸方式 265

10.4.4几种纹理过滤方式 266

10.5摄像机和雾 267

10.5.1摄像机的主要参数 268

10.5.2合理的设置视角 268

10.5.3加入雾特效 270

10.6几何体综合案例 273

10.6.1旋转面的原理 273

10.6.2贝塞尔曲线 273

10.6.3曲线生成工具 273

10.6.4茶杯生成 274

10.6.5茶壶生成 278

10.6.6一套茶具的场景 281

10.7本章小结 282

第11章 消息广播与服务 283

11.1广播组件——BroadcastReceiver 283

11.1.1基本知识 283

11.1.2基于广播的案例 284

11.2服务组件——Servic 287

11.2.1基本知识 287

11.2.2基于服务的案例 287

11.3单机版音乐盒的实现 291

11.4本章小结 299

第12章 Android网络开发及数据库管理 300

12.1使用Socket进行通信 300

12.1.1 Socket服务端的开发 300

12.1.2 Socket客户端的开发 301

12.2通过URL和HTTP请求获取网络资源 303

12.2.1通过URL获取网络资源 303

12.2.2通过HTTP请求网络资源 304

12.3使用WebView进行网络开发 306

12.3.1使用WebView浏览网页 306

12.3.2使用WebView执行HTML代码 310

12.4 E-mail相关功能开发 312

12.4.1 SMTP协议基本知识 312

12.4.2发送E-mail 314

12.5 SQLite数据库 316

12.5.1数据库的基本操作 317

12.5.2图书小助手资源文件的组织与开发 323

12.5.3图书小助手代码的开发 326

12.6访问存储卡 333

12.6.1获取存储卡容量 333

12.6.2读取存储卡信息 334

12.7新浪微博客户端的开发 336

12.7.1开发前准备工作 336

12.7.2新浪微博客户端开发案例 337

12.8基于WebQQ API的二次开发案例 342

12.8.1开发前准备工作 343

12.8.2腾讯QQ客户端开发案例 343

12.9本章小结 345

第13章 手机基础功能应用开发 346

13.1短信操作 346

13.1.1发送短消息 346

13.1.2短信提示功能 349

13.1.3短信群发功能 352

13.1.4查询短信发送状态 356

13.2电话操作 359

13.2.1拨打电话 360

13.2.2过滤指定电话 363

13.2.3查询当前状态 364

13.3本章小结 365

第14章 我的应用我做主——Android系统特色功能开发 366

14.1 Android系统Configuration 366

14.1.1 Configuration基本知识 366

14.1.2响应Configuration的变化 366

14.2 Android系统壁纸更改与提醒设置 369

14.2.1壁纸的更改 369

14.2.2振动功能的设置 372

14.2.3音量调节功能 375

14.3 Android动态壁纸的开发 378

14.3.1动态壁纸的资源和配置文件 378

14.3.2动态壁纸的星星类 380

14.3.3小星星运动线程——BallGoThread 382

14.3.4小星星的产生 384

14.3.5动态壁纸的开发 385

14.3.6动态壁纸的效果 389

14.4续航的支柱——电池电量 391

14.4.1电池原理概述 391

14.4.2电池电量提示案例 391

14.5手机闹钟 393

14.5.1 AlarmManager基本知识 394

14.5.2开发闹钟应用 394

14.6 Android动态切屏功能的实现 397

14.6.1 Android动态切屏的基本介绍 397

14.6.2 Android动态切屏的使用案例 397

14.7 TelephonyManager管理器 400

14.7.1 TelephonyManager的基本知识 400

14.7.2 TelephonyManager的使用案例 401

14.8 Notification的应用 404

14.8.1 Notification基础知识 404

14.8.2单机版音乐盒升级——使用Notification 404

14.9本章小结 405

第15章 Android桌面组件开发与多媒体数据的处理 406

15.1桌面快捷方式介绍 406

15.1.1调用应用程序创建快捷方式 406

15.1.2向Launcher添加快捷方式 408

15.2桌面组件——Widget 409

15.2.1桌面组件基本知识 409

15.2.2桌面组件的简单开发 410

15.3实时文件夹 418

15.3.1 Activity的创建 418

15.3.2内容提供者ContentProvider的创建 420

15.4多媒体数据的处理 425

15.4.1音频数据的采集 425

15.4.2图像数据的采集 428

15.4.3视频数据的采集 432

15.4.4音乐播放 435

15.4.5视频播放 439

15.5本章小结 443

第16章 Android传感器应用的开发 444

16.1 Android下主要传感器概览 444

16.1.1传感器模拟器——Sensor-Simulator 444

16.1.2加速度传感器——Accele-rometer 445

16.1.3磁场传感器——MagneticField 446

16.1.4姿态传感器——Orien-tation 448

16.1.5光传感器——Light 451

16.1.6温度传感器——Tem-perature 452

16.2姿态传感器的简单案例 454

16.2.1 3D重力小球的功能简介 454

16.2.2程序主入口MyGLActivity的实现 455

16.2.3 3D场景界面MyGLView类的实现 457

16.2.4 MyGLView的内部类Scene-Renderer的实现 459

16.2.5场景中盒子的实现 461

16.2.6场景中小球的实现 467

16.2.7控制小球运动的线程类的实现 469

16.3本章小结 469

第17章 基于Google服务的二次开发 470

17.1使用GPS——位置的获取 470

17.1.1 LocationManager及相关类的介绍 470

17.1.2获取位置信息案例的简单开发 471

17.2谷歌地图的使用 475

17.2.1 Map API Key的获取 475

17.2.2模拟器的创建 476

17.2.3谷歌地图查询的应用 478

17.2.4谷歌地图导航的应用 481

17.3谷歌街景基本知识 484

17.3.1 Android平台下谷歌街景服务的基本原理 484

17.3.2使用谷歌街景的案例 484

17.4天气预报功能的简单开发 488

17.4.1 XML文件的解析方法 488

17.4.2获取天气情况的案例 488

17.5谷歌翻译API的应用 493

17.5.1谷歌翻译API的介绍 493

17.5.2谷歌翻译API的应用案例——口袋词典的开发 493

17.6本章小结 498

第18章 休闲游戏——年年有鱼 499

18.1年年有鱼的开发背景及功能概述 499

18.1.1游戏开发背景概述 499

18.1.2游戏功能简介 499

18.2游戏的策划及准备工作 500

18.2.1游戏的策划 501

18.2.2 Android平台下游戏开发的准备工作 501

18.3游戏的架构 502

18.3.1游戏的框架简介 502

18.3.2各个类的简要介绍 502

18.4公共类的实现 504

18.4.1界面管理类MyActivity的代码框架 504

18.4.2界面管理类MyActivity部分成员变量及方法的实现 505

18.4.3游戏常量类Constant的实现 507

18.5辅助界面相关类的实现 508

18.5.1欢迎动画界面WellcomeSurfaceView类的实现 508

18.5.2主菜单界面MainView的实现 510

18.5.3积分榜界面ScoreSurfaceView的代码框架 514

18.5.4积分榜界面Score SurfaceView类部分方法的实现 515

18.6游戏界面相关类的实现 516

18.6.1游戏界面GameView类的代码框架 517

18.6.2游戏界面GameView类部分成员方法的实现 518

18.6.3刷帧线程KeyThread类的实现 522

18.6.4渔网的破损线程FishNet Thread类的实现 522

18.6.5倒计时的线程TimeRunning Thread类的实现 523

18.6.6鱼尾摆动的线程Fishtail Thread类的实现 524

18.6.7鱼行进的线程FishGoThread类的实现 524

18.6.8生成鱼的线程FishGenerator Thread类的实现 525

18.7情景相关类的实现 526

18.7.1倒计时类Timer的代码框架 526

18.7.2 Timer类部分成员方法的实现 527

18.7.3得分Score类的实现 529

18.7.4鱼类SingleFish的实现 530

18.7.5渔网类FishingNet的实现 532

18.7.6被捕捉鱼的类FishCatched的实现 533

18.7.7背景图片类BackgroundPic的实现 534

18.8自定义控件及工具类的实现 535

18.8.1数据库类DBUtils的实现 535

18.8.2获取日期的工具DateUtil类的实现 536

18.8.3图片缩放的工具类PicLoadUtil的实现 536

18.8.4主菜单按钮MainMenuButton类的实现 537

18.9游戏的优化与改进 538

第19章 艺术休闲——沙画涂鸦 539

19.1沙画的背景以及软件概述 539

19.1.1沙画背景 539

19.1.2软件概述 540

19.2软件的策划及准备工作 541

19.2.1软件策划 541

19.2.2 Android平台下的准备工作 541

19.3软件架构 542

19.3.1软件框架简介 542

19.3.2各个类的简要介绍 543

19.4公共类的实现 544

19.4.1主控制类——SandPainting Activity 544

19.4.2常量类——Constant 548

19.5辅助界面相关类的实现 550

19.5.1欢迎界面类——Welcome View 550

19.5.2欢迎界面刷帧线程Welcome View DrawThread 551

19.6主界面相关类的实现 552

19.6.1原子动作类——Atom Action 552

19.6.2动作类——ActionGroup 554

19.6.3数据记录类——Record 555

19.6.4背景颜色选择类——Bg ColorView 558

19.6.5设置界面类——Setup- View 560

19.6.6显示结果集类——Show GalleryView 562

19.6.7主界面类——MainView 567

19.6.8主界面的刷帧线程——Main View DrawThread 571

19.7优化与改进 572

第20章 V酷音乐盒 573

20.1系统背景及功能概述 573

20.1.1背景简介 573

20.1.2功能概述 573

20.1.3开发环境和目标平台 574

20.2开发前的准备工作 575

20.2.1数据库设计 575

20.2.2表的创建和测试数据的插入 582

20.3系统功能预览及总体架构 583

20.3.1客户端功能预览 583

20.3.2服务器端预览 587

20.3.3系统目录结构 589

20.4服务器端功能模块的实现 590

20.4.1登录功能的开发 591

20.4.2歌曲添加功能的开发 593

20.4.3歌曲查询和删除功能的开发 594

20.4.4歌曲修改功能的开发 602

20.4.5系统类别功能的开发 603

20.4.6与客户端的通信功能 605

20.5客户端功能的实现 608

20.5.1歌曲扫描功能的开发 608

20.5.2更新SD卡功能的开发 612

20.5.3音乐播放功能的开发 614

20.5.4歌曲频谱的开发 620

20.5.5歌词同步功能的开发 624

20.5.6添加歌曲列表功能的开发 626

20.5.7删除、重命名歌曲列表功能的开发 629

20.5.8注册功能的开发 630

20.5.9登录功能的开发 633

20.5.10下载功能的开发 636

20.6系统优化和改进 638

第21章 Android 3.0新特性概览与开发实践 639

21.1历史传承及新特性简介 639

21.1.1 Android历代版本概览 639

21.1.2 Android 3.0新特性简介 641

21.2浅尝Android 3.0新特性开发 644

21.2.1区域图像解码——Bitmap RegionDecoder 644

21.2.2便携日历——Calendar View 647

21.3本章小结 650