《Android 7应用程序开发教程》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:李波编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2019
  • ISBN:9787302517559
  • 页数:469 页
图书介绍:本书主要包括Android 系统的发展历史、系统架构、应用程序框架、界面开发、网络访问、多媒体应用程序开发,数据存储等内容。本书每一章节都给出实例,使读者进一步巩固所学的知识,提高综合实战能力。

第1章 Android系统概述 1

1.1智能手机 1

1.1.1什么是智能手机 1

1.1.2智能手机操作系统 2

1.2什么是Android 4

1.2.1 Android的历史 4

1.2.2 Android的发展 5

1.2.3 Android的优点 6

1.3 Android系统架构 7

1.3.1应用程序层 7

1.3.2应用程序框架层 7

1.3.3系统库 8

1.3.4 Android运行环境 8

1.3.5 Linux内核 9

1.4 Android 7新特性介绍 9

1.4.1分屏显示 9

1.4.2全新的通知设计 9

1.4.3基于配置文件的JIT/AOT编译 10

1.4.4优化的低电耗模式 10

1.4.5 Project Svelte:后台优化 10

1.4.6 Data Saver 11

1.4.7 Quick Settings Tile API 11

1.4.8号码屏蔽和来电过滤 11

1.4.9 OpenGL ES 3.2 API支持 12

1.4.10密钥认证 12

1.5小结 12

1.6习题 12

第2章 搭建Android开发环境 13

2.1系统需求 13

2.2软件安装 13

2.2.1 JDK的安装 13

2.2.2 Android Studio 14

2.2.3创建AVD 17

2.2.4 AVD与真机的区别 19

2.3 Android SDK介绍 20

2.3.1 Android SDK目录结构 20

2.3.2 Android.jar 22

2.3.3 Android API核心包 22

2.3.4 Android API扩展包 23

2.4创建第一个Android应用程序 23

2.4.1创建HelloWold工程 23

2.4.2相关代码 26

2.4.3工程文件结构解析 29

2.5调试程序 31

2.5.1设置断点 31

2.5.2调试 31

2.6小结 32

2.7习题 32

第3章 Android应用程序结构 33

3.1应用程序基本组成 33

3.1.1 Activity 33

3.1.2 Service 34

3.1.3 BroadcastReceiver 34

3.1.4 ContentProvider 34

3.1.5 Intent 34

3.2 Activity 35

3.2.1 Activity的生命周期 35

3.2.2 Activity的创建 37

3.2.3启动Activity 38

3.2.4关闭Activity 38

3.2.5 Activity数据传递 39

3.3资源 40

3.4 Manifest文件 40

3.5 App Widgets 43

3.5.1基础知识 43

3.5.2在Manifest文件中声明App Widget 44

3.5.3增加AppWidgetProviderInfo元数据 44

3.5.4创建App Widget布局 45

3.5.5为App Widget添加边界 45

3.5.6使用AppWidgetProvider类 46

3.5.7接收App Widget的广播 48

3.5.8创建App Widget的配置Activity 48

3.5.9使用配置Activity对App Widget进行更新 48

3.6进程和线程 49

3.6.1进程 49

3.6.2线程 51

3.6.3线程安全方法 54

3.6.4进程间的通信 54

3.7小结 54

3.8习题 55

第4章 Android GUI开发 56

4.1 View和ViewGroup 56

4.2使用XML定义视图 57

4.3布局 60

4.3.1 FrameLayout 60

4.3.2 LinearLayout 61

4.3.3 RelativeLayout 64

4.3.4 TableLayout 66

4.3.5 AbsoluteLayout 68

4.3.6 WebView 70

4.4常用Widget组件 71

4.4.1创建Widget组件实例 71

4.4.2按钮 73

4.4.3文本框 75

4.4.4编辑框 76

4.4.5多项选择按钮 77

4.4.6单项选择按钮组 81

4.4.7下拉列表 84

4.4.8自动完成文本 87

4.4.9日期选择器和时间选择器 89

4.4.10进度条 92

4.4.11滚动视图 95

4.4.12拖动条 96

4.4.13评价条 98

4.4.14图片视图和图片按钮 101

4.4.15 图片切换器和图库 104

4.4.16网格视图 108

4.4.17标签 110

4.5 Menu和ActionBar 113

4.5.1 Options Menu 114

4.5.2 Context Menu 117

4.5.3 SubMenu 118

4.6 Bitmap 120

4.7对话框 123

4.7.1 AlertDialog 123

4.7.2 ProgressDialog 125

4.8 Toast和Notification 127

4.8.1 Toast 127

4.8.2 Notification 128

4.8.3 Notification Group 131

4.9多窗口模式 136

4.10界面事件响应 139

4.10.1事件监听器 139

4.10.2回调事件响应 140

4.10.3界面事件响应实例 140

4.10小结 144

4.11习题 144

第5章 电话和短信应用程序开发 145

5.1 Intent 145

5.1.1显式Intent和隐式Intent 147

5.1.2 IntentFilter 147

5.2拨号程序 148

5.3短信程序 151

5.3.1 SMS简介 151

5.3.2接收短信 151

5.3.3接收短信实例 151

5.3.4发送短信 154

5.3.5短信发送实例 154

5.4照相机程序 157

5.5小结 160

5.6习题 160

第6章 多媒体开发 161

6.1 Service 161

6.1.1 Service的作用 161

6.1.2 Service的生命周期 161

6.1.3启动Service 162

6.2 BroadcastReceiver 163

6.3音频 166

6.3.1 Android N支持的音频格式 166

6.3.2音频播放器 167

6.3.3后台播放音频 170

6.3.4录音程序 173

6.3.5后台录制音频 179

6.4视频 182

6.4.1 Android N支持的视频文件 182

6.4.2视频播放器 182

6.4.3拍照程序 189

6.4.4录制视频 195

6.5小结 202

6.6习题 202

第7章 数据存储 203

7.1 SharedPreferences 203

7.1.1 SharedPreferences简介 204

7.1.2使用SharedPreferences 204

7.2文件存储 207

7.2.1文件存储方式简介 207

7.2.2使用文件存储功能 208

7.3 SQLite 211

7.3.1 SQLite数据库简介 211

7.3.2 SQLite数据库操作 212

7.3.3 SQLite数据库操作实例 215

7.4 ContentProvider 223

7.4.1 ContentProvider简介 223

7.4.2 UriMatcher 225

7.4.3访问系统提供的ContentProvider 225

7.4.4自定义ContentProvider 228

7.4.5访问自定义ContentProvider 232

7.5数据同步到云端 238

7.5.1 App Engine简介 238

7.5.2创建可相互通信的Android和App Engine应用程序 239

7.6数据备份与恢复 245

7.6.1 Android数据备份与恢复简介 245

7.6.2实现备份代理的步骤 245

7.6.3通过BackupAgent实现备份与恢复 247

7.6.4通过BackupAgentHelper实现备份与恢复 250

7.7小结 253

7.8习题 254

第8章 网络编程 255

8.1 HTTP通信 255

8.1.1访问URL指定资源 258

8.1.2使用Get方式获取网络服务 262

8.1.3使用POST方式获取网络服务 265

8.2 Socket通信 268

8.2.1 Socket简介 268

8.2.2 Socket使用方法 269

8.2.3 Socket编程实例 271

8.3 Bluetooth通信 274

8.3.1 Bluetooth简介 274

8.3.2 Android系统的蓝牙通信功能 275

8.3.3蓝牙通信实例 279

8.4 WIFI通信 296

8.4.1 WIFI简介 296

8.4.2 WIFI实例 296

8.4.3 WIFI Direct 301

8.4.4创建WIFI Direct应用程序的步骤 302

8.4.5 WIFI Direct编程实例 307

8.5 NFC 319

8.5.1 NFC简介 319

8.5.2 Android NFC技术 319

8.5.3使用前台发布系统 321

8.6 USB 323

8.6.1 USB简介 323

8.6.2 USB附件 324

8.6.3 USB主机 329

8.7 SIP 333

8.7.1 SIP简介 333

8.7.2相关API 333

8.7.3 Manifest文件配置 334

8.7.4创建SipManager对象 335

8.7.5注册SIP服务器 335

8.7.6拨打音频电话 336

8.7.7接收呼叫 337

8.8小结 339

8.9习题 339

第9章 智能传感器 340

9.1获取位置信息 340

9.1.1 LocationManager介绍 341

9.1.2 LocationProvider介绍 341

9.1.3使用GPS获取当前位置信息 344

9.2使用Google地图服务 347

9.2.1 Google Map API简介 347

9.2.2申请Android Map API Key 348

9.2.3使用Google Map显示当前位置 350

9.3传感器 354

9.3.1 Android传感器简介 354

9.3.2标识传感器 356

9.3.3传感器事件处理 357

9.4运动传感器 358

9.4.1加速度传感器 359

9.4.2重力传感器 359

9.4.3陀螺仪 359

9.4.4线性加速度传感器 361

9.4.5旋转向量传感器 361

9.5位置传感器 361

9.5.1磁场传感器 361

9.5.2方位传感器 362

9.5.3距离传感器 363

9.6环境传感器 364

9.7小结 365

9.8习题 365

第10章 绘图 366

10.1 2D绘图 366

10.1.1获取Canvas对象 366

10.1.2使用自定义View绘图 367

10.1.3使用Bitmap绘图 369

10.1.4使用SurfaceView绘制静态图像 372

10.1.5使用SurfaceView绘制动态图像 375

10.2 Drawable 379

10.2.1从资源文件中创建Drawable对象 379

10.2.2从XML文件中创建Drawable对象 380

10.2.3使用构造方法创建Drawable对象 380

10.3 3D绘图 381

10.3.1 OpenGL ES简介 381

10.3.2绘制3D图像实例 381

10.4硬件加速 385

10.4.1启用硬件加速 385

10.4.2 Android绘图模型 386

10.5 RenderScript 388

10.5.1 RenderScript综述 388

10.5.2使用动态分配的内存 389

10.5.3使用静态分配的内存 391

10.6小结 394

10.7习题 394

第11章 App的本地化 395

11.1国际化与本地化 395

11.2手机区域设置 396

11.3未本地化的应用程序 397

11.4本地化的应用程序 400

11.5小结 406

11.6习题 406

第12章 文本与输入 407

12.1剪贴板框架 407

12.2剪贴板类 408

12.3将剪贴板内的数据强制转换为文本 409

12.4复制到剪贴板 410

12.5从剪贴板中粘贴 412

12.6利用Content Provider复制复杂数据 415

12.7设计有效的复制/粘贴功能 419

12.8综合实例 420

12.9小结 428

第13章 企业应用开发 429

13.1设备管理API概述 429

13.1.1设备管理工作过程 429

13.1.2设备管理策略 430

13.2开发设备管理API应用 431

13.2.1创建程序代码 432

13.2.2 DeviceAdminReceiver的子类 434

13.2.3启用程序 435

13.2.4管理策略 436

13.3文本语音API 439

13.4 TV应用 443

13.4.1创建电视应用项目 443

13.4.2添加TV支持库 445

13.4.3建立TV应用 446

13.4.4运行TV应用 446

13.4.5 TV应用实例 447

13.5可穿戴设备应用 451

13.5.1可穿戴设备应用简介 451

13.5.2 Android Wear项目搭建 452

13.6小结 457

第14章 应用程序发布 458

14.1应用程序发布的步骤 458

14.2为什么要为应用程序签名 459

14.3 Android的签名策略 460

14.4导出未签名应用程序 461

14.5生成签名文件 462

14.5.1使用Android Studio 462

14.5.2使用keytool命令 463

14.6为应用程序签名 465

14.6.1使用Android Studio 465

14.6.2使用jarsigner命令 466

14.7使用zipalign工具优化应用程序 467

14.8发布到Google Play Store 468

14.9小结 469

14.10习题 469