图书介绍

Android应用开发学习手册2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

Android应用开发学习手册
  • 管蕾编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302401292
  • 出版时间:2015
  • 标注页数:770页
  • 文件大小:95MB
  • 文件页数:786页
  • 主题词:移动终端-应用程序-程序设计-技术手册

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Android应用开发学习手册PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1篇 基础知识篇2

第1章 Android应用开发基础2

1.1 移动智能设备系统发展现状2

1.1.1 智能手机和移动智能设备2

1.1.2 主流系统的发展现状3

1.2 Android系统的诞生和发展现状5

1.2.1 Android系统的发展历程6

1.2.2 Android系统的发展现状7

1.2.3 常见的Android设备7

1.2.4 Android系统的巨大优势9

1.3 搭建Android应用开发环境10

1.3.1 安装Android SDK的系统要求11

1.3.2 安装JDK11

1.3.3 获取并安装Eclipse和Android SDK14

1.3.4 安装ADT17

1.3.5 设定Android SDK Home19

1.3.6 验证开发环境20

1.3.7 创建Android虚拟设备(AVD)21

1.3.8 启动AVD模拟器23

1.4 第一个Android应用程序24

1.4.1 使用Eclipse新建Android工程24

1.4.2 编写代码和代码分析25

1.4.3 调试程序26

1.4.4 运行项目27

1.4.5 导入一个既有项目28

第2章 Android应用开发技术必备30

2.1 Android系统架构30

2.1.1 最底层的操作系统层(OS)——C/C++实现30

2.1.2 Android的硬件抽象层——C/C++实现31

2.1.3 各种库(Libraries)和Android运行环境(RunTime)——中间层32

2.1.4 应用程序(Application)——Java实现32

2.1.5 应用程序框架(Application Framework)33

2.2 Android应用程序文件组成33

2.2.1 src目录33

2.2.2 设置文件AndroidManfest.xml34

2.2.3 gen目录中的R.java和BuildConfig.java35

2.2.4 res目录36

2.2.5 assets目录37

2.3 Android的5大组件37

2.3.1 Activity组件——表现屏幕界面37

2.3.2 Intent组件——实现界面切换37

2.3.3 Service组件——后台服务38

2.3.4 Broadcast/Receiver组件——实现广播机制38

2.3.5 Content Provider组件——实现数据存储39

2.4 Android应用程序的生命周期39

2.4.1 什么是进程39

2.4.2 什么是线程40

2.4.3 Android应用程序的生命周期40

2.5 Android和Linux的关系42

2.5.1 Android继承于Linux42

2.5.2 Android和Linux内核的区别42

第2篇 核心技术篇46

第3章 UI界面布局46

3.1 View视图组件46

3.1.1 View的常用属性和方法46

3.1.2 Viewgroup容器47

3.1.3 ViewManager类47

3.2 Android UI布局的方式48

3.2.1 使用XML布局48

3.2.2 在Java代码中控制布局48

3.3 Android布局管理器详解50

3.3.1 Android布局管理器概述50

3.3.2 线性布局LinearLayout52

3.3.3 相对布局RelativeLayout53

3.3.4 帧布局FrameLayout55

3.3.5 表格布局TableLayout55

3.3.6 绝对布局AbsoluteLayout56

3.3.7 网格布局GridLayout57

3.3.8 实战演练——演示各种基本布局控件的用法58

第4章 核心组件介绍66

4.1 Widget组件66

4.1.1 创建一个Widget组件66

4.1.2 使用按钮Button68

4.1.3 使用文本框TextView69

4.1.4 使用编辑框EditText76

4.1.5 使用多项选择控件CheckBox77

4.1.6 使用单项选择控件RadioGroup79

4.1.7 使用下拉列表控件Spinner80

4.1.8 使用自动完成文本控件AutoCompleteTextView83

4.1.9 使用日期选择器控件DatePicker85

4.1.10 使用时间选择器控件TimePicker86

4.1.11 联合应用DatePicker和TimePicker87

4.1.12 使用滚动视图控件ScrollView91

4.1.13 使用进度条控件ProgressBar91

4.1.14 使用拖动条控件SeekBar93

4.1.15 使用评分组件RatingBar94

4.1.16 使用图片视图控件ImageView95

4.1.17 使用切换图片控件ImageSwitcher和Gallery96

4.1.18 使用网格视图控件GridView98

4.1.19 使用标签控件Tab100

4.2 使用MENU友好界面102

4.2.1 MENU基础102

4.2.2 实战演练——使用MENU控件102

4.3 使用列表控件ListView105

4.3.1 通过ArrayAdapter接收一个数组或通过List作为参数来构建105

4.3.2 实战演练——使用SimpleAdapter实现ListView列表功能105

4.4 使用对话框控件108

4.4.1 对话框基础108

4.4.2 实战演练——在屏幕中使用对话框显示问候语109

4.5 使用Toast和Notification提醒控件114

4.5.1 Toast和Notification基础115

4.5.2 练习Toast和Notification116

4.6 自定义控件123

第5章 Android事件处理129

5.1 基于监听的事件处理129

5.1.1 监听处理模型中的3种对象129

5.1.2 Android系统中的监听事件132

5.1.3 实现事件监听器的方法132

5.2 基于回调的事件处理140

5.2.1 Android事件侦听器的回调方法140

5.2.2 基于回调的事件传播142

5.2.3 重写onTouchEvent方法响应触摸屏事件145

5.3 响应的系统设置的事件146

5.3.1 Configuration类详解147

5.3.2 重写onConfigurationChanged响应系统设置更改149

5.4 Handler消息传递机制152

第6章 Activity界面表现详解157

6.1 Activity基础157

6.1.1 Activity的状态及状态间的转换157

6.1.2 Activity栈158

6.1.3 Activity的生命周期159

6.2 操作Activity163

6.2.1 使用LauncherActivity类163

6.2.2 使用ExpandableListActivity类165

6.2.3 使用PreferenceActivity和PreferenceFragment167

6.2.4 配置Activity171

6.2.5 启动、关闭Activity172

6.2.6 Activity数据交换176

6.2.7 启动其他Activity181

6.3 Activity的加载模式186

6.3.1 standard加载模式187

6.3.2 singleTop加载模式188

6.3.3 singleTask加载模式188

6.3.4 singleInstance加载模式188

6.4 使用Fragment190

6.4.1 Fragment基础190

6.4.2 创建Fragment194

第7章 Intent和IntentFilter详解201

7.1 Intent和IntentFilter基础201

7.1.1 Intent启动不同组件的方法201

7.1.2 Intent的构成202

7.1.3 Intent的基本用法202

7.2 显式Intent和隐式Intent205

7.2.1 显式Intent(Explicit Intent)的基本用法206

7.2.2 隐式Intent(Implicit Intent)209

7.3 IntentFilter详解210

7.3.1 IntentFilter基础210

7.3.2 IntentFilter响应隐式Intent211

7.3.3 Android解析IntentFilter213

7.4 Intent的属性213

7.4.1 Component属性213

7.4.2 Action属性216

7.4.3 Category属性219

7.4.4 Data属性和Type属性222

7.4.5 Extra属性225

7.4.6 Flag属性225

7.5 Intent和Activity226

7.5.1 显式启动新的Activity226

7.5.2 隐式Intent和运行时绑定226

7.5.3 Activity的返回值227

7.5.4 Android本地动作229

7.6 使用Intent广播一个事件229

7.6.1 广播事件230

7.6.2 BroadcastReceiver监听广播230

7.6.3 Android本地广播231

7.7 拨打电话232

7.8 发送短信234

第8章 Service和BroadcastReceiver237

8.1 Service详解237

8.1.1 Service基础237

8.1.2 Service的生命周期237

8.1.3 Service的策略239

8.1.4 创建Service240

8.1.5 使用Service243

8.1.6 与远程Service通信244

8.1.7 Service的访问权限245

8.1.8 简单使用Service实例245

8.1.9 提高Service优先级250

8.1.10 Service综合实例250

8.2 AIDL Service服务253

8.2.1 AIDL基础253

8.2.2 将接口暴露给客户端256

8.2.3 客户端访问AIDL Service258

8.3 BroadcastReceiver详解261

8.3.1 BroadcastReceiver基础261

8.3.2 Receiver的生命周期262

8.3.3 基本操作262

8.4 短信处理和电话处理266

8.4.1 SmsManager类介绍266

8.4.2 TelephonyManager类介绍268

8.4.3 实战演练——监听短信是否发送成功271

第9章 应用资源管理机制详解275

9.1 Android的资源类型275

9.2 如何使用资源276

9.2.1 在Java代码中使用资源清单项276

9.2.2 在Java代码中访问实际资源277

9.2.3 在XML代码中使用资源277

9.3 \res\values目录278

9.3.1 定义颜色值278

9.3.2 字符串资源278

9.3.3 颜色资源文件279

9.3.4 尺寸资源文件279

9.3.5 数组资源280

9.3.6 使用字符串、颜色和尺寸资源280

9.3.7 使用数组资源284

9.4 Drawable(图片)资源287

9.4.1 使用StateListDrawable资源287

9.4.2 使用LayerDrawable资源288

9.4.3 使用ShapeDrawable资源289

9.4.4 使用ClipDrawable资源290

9.4.5 使用AnimationDrawable资源290

9.5 使用属性动画(Property Animation)资源291

9.6 使用原始的XML资源292

9.7 样式资源和主题资源295

9.7.1 使用样式资源295

9.7.2 使用主题资源文件297

9.8 使用属性资源298

9.9 使用声音资源301

9.1 使用布局资源和菜单资源303

9.11 国际化304

第10章 数据存储307

10.1 5种存储方式307

10.2 SharedPreferences存储307

10.2.1 SharedPreferences简介308

10.2.2 使用SharedPreferences存储数据308

10.3 文件存储310

10.4 最常用的SQLite313

10.4.1 SQLite基础313

10.4.2 SQLite数据类型314

10.4.3 SQLiteDatabase介绍315

10.4.4 SQLiteOpenHelper介绍319

10.4.5 实战演练——使用SQLite操作数据319

10.5 ContentProvider存储325

10.5.1 ContentProvider介绍325

10.5.2 使用ContentProvider326

10.6 网络存储328

第3篇 多媒体应用篇332

第11章 二维图像处理332

11.1 SurfaceFlinger渲染管理器332

11.1.1 SurfaceFlinger基础332

11.1.2 Surface和Canvas334

11.2 Skia渲染引擎详解335

11.2.1 Skia基础335

11.2.2 Android中的Skia335

11.2.3 使用Skia绘图336

11.2.4 Skia的其他功能337

11.3 Android绘图基础338

11.3.1 使用Canvas画布339

11.3.2 使用Paint类341

11.3.3 位图操作类Bitmap344

11.4 使用其他的绘图类349

11.4.1 使用设置文本颜色类Color349

11.4.2 使用矩形类Rect和RectF351

11.4.3 非矢量图形拉伸类NinePatch355

11.4.4 使用变换处理类Matrix355

11.4.5 使用BitmapFactory类359

11.4.6 使用Region类361

11.4.7 使用Typeface类363

第12章 二维动画应用364

12.1 使用Drawable实现动画效果364

12.1.1 Drawable基础364

12.1.2 使用Drawable实现动画效果365

12.2 Tween Animation动画详解366

12.2.1 Tween动画基础366

12.2.2 Tween动画类详解370

12.2.3 Tween应用实战373

12.3 实现Frame Animation动画效果375

12.3.1 Frame动画基础376

12.3.2 使用Frame动画376

12.4 Property Animation动画378

12.4.1 Property Animation(属性)动画基础378

12.4.2 使用Property Animation380

12.5 实现动画效果的其他方法384

12.5.1 播放GIF动画384

12.5.2 实现EditText动画特效386

第13章 开发音频应用程序388

13.1 音频应用接口类介绍388

13.2 AudioManager类389

13.2.1 AudioManager基础389

13.2.2 AudioManager基本应用——设置短信提示铃声391

13.3 录音处理395

13.3.1 使用MediaRecorder接口录制音频395

13.3.2 使用AudioRecorder接口录制音频397

13.4 播放音频399

13.4.1 使用AudioTrack播放音频399

13.4.2 使用MediaPlayer播放音频400

13.4.3 使用SoundPool播放音频402

13.4.4 使用Ringtone播放铃声402

13.4.5 使用JetPlayer播放音频403

13.4.6 使用AudioEffect处理音效404

13.5 语音识别技术406

13.5.1 Text-To-Speech技术406

13.5.2 谷歌的Voice Recognition技术410

13.6 实现振动功能412

13.7 设置闹钟413

13.7.1 AlarmManager基础413

13.7.2 开发一个闹钟程序414

第14章 开发视频应用程序420

14.1 使用MediaPlayer播放视频420

14.2 使用VideoView播放视频427

14.2.1 VideoView基础428

14.2.2 使用VideoView播放手机中的影片429

14.3 使用Camera拍照432

14.3.1 Camera基础432

14.3.2 使用Camera预览并拍照434

14.3.3 使用Camera API方式拍照440

第15章 OpenGL ES 3.1 三维处理443

15.1 OpenGL ES基础443

15.1.1 OpenGL ES 3.1 介绍443

15.1.2 Android全面支持OpenGL ES 3.1444

15.2 OpenGL ES的基本应用444

15.2.1 使用点线法绘制三角形444

15.2.2 使用索引法绘制三角形449

15.3 实现投影效果454

15.3.1 正交投影454

15.3.2 透视投影455

15.3.3 正交投影和透视投影的区别455

15.4 实现光照效果455

15.4.1 光源的类型455

15.4.2 光源的颜色456

15.5 实现纹理映射457

15.5.1 纹理贴图和纹理拉伸457

15.5.2 Texture Filter纹理过滤458

15.6 绘制一个圆柱体459

15.7 实现坐标变换467

15.7.1 坐标变换基础467

15.7.2 实现缩放变换468

15.7.3 实现平移变换468

15.8 使用Alpha混合技术468

15.9 实现摄像机和雾特效功能470

15.9.1 摄像机基础470

15.9.2 雾特效基础470

第4篇 网络应用篇474

第16章 HTTP数据通信474

16.1 HTTP基础474

16.1.1 HTTP概述474

16.1.2 HTTP协议的功能475

16.1.3 Android中的HTTP475

16.1.4 使用Apache接口476

16.1.5 实战演练——在手机屏幕中传递HTTP参数476

16.2 URL和URLConnection480

16.2.1 URL类详解481

16.2.2 实战演练——从网络中下载图片作为屏幕背景482

16.3 HTTPURLConnection详解486

16.3.1 HttpURLConnection的主要用法486

16.3.2 实战演练——在Android手机屏幕中显示网络中的图片488

第17章 处理XML数据491

17.1 XML技术基础491

17.1.1 XML的概述491

17.1.2 XML的语法492

17.1.3 获取XML文档492

17.2 使用SAX解析XML数据494

17.2.1 SAX的原理494

17.2.2 基于对象和基于事件的接口495

17.2.3 常用的接口和类496

17.2.4 实战演练——在Android系统中使用SAX解析XML数据499

17.3 使用DOM解析XML501

17.3.1 DOM概述501

17.3.2 DOM的结构502

17.3.3 实战演练——在Android系统中使用DOM解析XML数据504

17.4 PULL解析技术506

17.4.1 PULL解析原理506

17.4.2 实战演练——在Android系统中使用PULL解析XML数据506

第18章 下载、上传数据510

18.1 下载网络中的图片数据510

18.2 下载网络中的JSON数据511

18.2.1 JSON基础511

18.2.2 实战演练——远程下载服务器中的JSON数据512

18.3 实战演练——下载并播放网络中的MP3517

18.4 使用GET方式上传数据524

18.5 使用POST方式上传数据528

第19章 使用Socket实现数据通信533

19.1 Socket编程初步533

19.1.1 TCP/IP协议基础533

19.1.2 UDP协议534

19.1.3 基于Socket的Java网络编程534

19.2 TCP编程详解535

19.2.1 使用ServletSocket536

19.2.2 使用Socket536

19.2.3 TCP中的多线程537

19.2.4 实现非阻塞Socket通信537

19.3 UDP编程539

19.3.1 使用DatagramSocket539

19.3.2 使用MulticastSocket540

19.4 在Android中使用Socket实现数据传输541

第20章 使用WebKit浏览网页数据545

20.1 WebKit源码分析545

20.1.1 Java层框架545

20.1.2 C/C++层框架550

20.2 分析WebKit的操作过程552

20.2.1 WebKit初始化552

20.2.2 载入数据554

20.2.3 刷新绘制554

20.3 WebView详解555

20.3.1 WebView介绍555

20.3.2 实战演练——在手机屏幕中浏览网页556

20.3.3 实战演练——加载一个指定的HTML程序558

20.3.4 实战演练——使用WebView加载JavaScript程序560

第21章 GPS地图定位564

21.1 位置服务564

21.1.1 类location详解564

21.1.2 实战演练——在Android设备中实现GPS定位565

21.2 随时更新位置信息567

21.2.1 库Maps中的类567

21.2.2 使用LocationManager监听位置567

21.2.3 实战演练——监听当前设备的坐标和海拔568

21.3 在Android设备中使用地图576

21.3.1 添加Google Map密钥576

21.3.2 使用Map API密钥578

21.3.3 实战演练——在Android设备中使用谷歌地图实现定位580

21.4 接近警报585

21.4.1 类Geocoder基础585

21.4.2 Geocoder的公共构造器和公共方法587

第5篇 知识进阶篇590

第22章 Android传感器应用开发详解590

22.1 Android传感器系统概述590

22.2 Android传感器应用开发基础590

22.2.1 查看包含的传感器591

22.2.2 模拟器测试工具——SensorSimulator592

22.2.3 实战演练——检测当前设备支持的传感器595

22.3 使用光线传感器596

22.3.1 光线传感器介绍597

22.3.2 使用光线传感器的方法598

22.4 使用磁场传感器598

22.4.1 什么是磁场传感器599

22.4.2 Android系统中的磁场传感器599

22.5 使用加速度传感器599

22.5.1 加速度传感器的分类600

22.5.2 Android系统中的加速度传感器600

22.6 使用方向传感器601

22.6.1 方向传感器基础601

22.6.2 Android中的方向传感器602

22.7 使用陀螺仪传感器603

22.7.1 陀螺仪传感器基础603

22.7.2 Android中的陀螺仪传感器604

22.8 使用旋转向量传感器605

22.9 使用距离传感器详解606

22.9.1 距离传感器介绍606

22.9.2 Android系统中的距离传感器606

22.10 使用气压传感器608

22.10.1 气压传感器基础608

22.10.2 气压传感器在智能手机中的应用609

22.11 温度传感器详解609

22.11.1 温度传感器介绍609

22.11.2 Android系统中的温度传感器610

22.12 使用湿度传感器612

第23章 近距离通信应用详解614

23.1 近距离无线通信技术概览614

23.1.1 ZigBee——低功耗、自组网614

23.1.2 WiFi——大带宽支持家庭互联614

23.1.3 蓝牙——4.0进入低功耗时代615

23.1.4 NFC——必将逐渐远离历史舞台615

23.2 低功耗蓝牙基础616

23.2.1 低功耗蓝牙的架构616

23.2.2 低功耗蓝牙分类617

23.2.3 可穿戴设备的兴起617

23.3 和蓝牙相关的类618

23.3.1 BluetoothSocket类618

23.3.2 BluetoothServerSocket类620

23.3.3 BluetoothAdapter类620

23.3.4 BluetoothClass.Service类626

23.3.5 BluetoothClass.Device类627

23.4 使用近场通信技术627

23.4.1 NFC技术的特点627

23.4.2 NFC的工作模式628

23.4.3 NFC和蓝牙的对比628

23.4.4 Android系统中的NFC629

23.4.5 实战演练——使用NFC发送消息630

第24章 手势识别实战635

24.1 手势识别技术介绍635

24.1.1 手势识别类GestureDetector635

24.1.2 手势检测器类GestureDetector636

24.1.3 手势识别处理事件和方法638

24.2 实战演练——通过点击的方式移动图片639

24.3 实战演练——实现各种手势识别642

24.3.1 布局文件main.xml642

24.3.2 隐藏屏幕项部的电池等图标和标题内容643

24.3.3 监听触摸屏幕中的各种常用手势643

24.3.4 根据监听到的用户手势创建视图645

24.4 实战演练——实现手势翻页效果646

24.4.1 布局文件main.xml646

24.4.2 监听手势647

第25章 Google Now和Android Wear详解652

25.1 Google Now介绍652

25.1.1 搜索引擎的升级——Google Now652

25.1.2 Google Now的用法653

25.2 Android Wear详解654

25.2.1 什么是Android Wear654

25.2.2 搭建Android Wear开发环境655

25.3 开发Android Wear程序659

25.3.1 创建通知659

25.3.2 创建声音661

25.3.3 给通知添加页面664

25.3.4 通知堆664

25.3.5 通知语法介绍665

25.4 实战演练——开发一个Android Wear程序666

第26章 Android应用优化详解674

26.1 用户体验是产品成功的关键674

26.1.1 什么是用户体验674

26.1.2 影响用户体验的因素675

26.1.3 用户体验设计目标675

26.2 Android优化概述676

26.3 UI布局优化676

26.3.1 〈merge/〉标签在UI界面中的优化作用677

26.3.2 遵循Android Layout优化的两段通用代码679

26.3.3 优化Bitmap图片680

26.3.4 FrameLayout布局优化682

26.3.5 使用Android提供的优化工具687

26.4 优化Android代码696

26.4.1 优化Java代码697

26.4.2 编写更高效的Android代码703

第27章 为Android开发网页717

27.1 准备工作717

27.1.1 搭建开发环境717

27.1.2 实战演练——编写一个适用于Android系统的网页719

27.1.3 控制页面的缩放723

27.2 添加Android的CSS723

27.2.1 编写基本的样式723

27.2.2 添加视觉效果725

27.3 添加JavaScript726

27.3.1 jQuery框架介绍726

27.3.2 具体实践727

27.4 使用AJAX729

27.4.1 AJAX介绍729

27.4.2 实战演练——在Android系统中开发一个AJAX网页729

27.5 让网页动起来735

27.5.1 一个开源框架——JQTouch735

27.5.2 实战演练——在Android系统中使用JQTouch框架开发网页735

27.6 使用PhoneGap742

27.6.1 PhoneGap介绍742

27.6.2 搭建PhoneGap开发环境743

27.6.3 创建基于PhoneGap的HelloWorld程序744

第28章 编写安全的应用程序751

28.1 Android安全机制概述751

28.1.1 Android的安全机制模型752

28.1.2 Android具有的权限752

28.1.3 Android的组件模型(Component Model)753

28.1.4 Android安全访问设置753

28.2 声明不同的权限754

28.2.1 AndroidManifest.xml文件基础754

28.2.2 声明获取不同的权限755

28.2.3 自定义一个权限759

28.3 发布Android程序生成APK759

28.3.1 什么是APK文件759

28.3.2 申请会员760

28.3.3 生成签名文件763

28.3.4 使用签名文件768

28.3.5 发布到市场770

热门推荐