作品简介

本书如何才能写出贴近Android设计理念、能够更加高效和可靠运行的Android应用?通过Android的源代码去了解其底层实现细节是最重要的方法之一!然而,Android系统太过于庞大,源代码实现复杂,学习的技术门槛和时间成本都很高。有没有一种方法既能帮助开发者深入理解Android应用开发,又能不被底层大量的实现细节所羁绊,迅速掌握编写高质量Android应用所需的知识?《Android开发精要》针对这个问题给出了完美的答案!它从Android繁杂的源代码中抽取出了Android开发的“精华”和“要点”,剥离了大量琐碎的底层实现细节,进行了高度概括和总结,不仅能帮助开发者迅速从宏观上理解整个Android系统的设计理念,而且能帮助开发者迅速从微观上掌握核心知识点的原理,从而编写出高质量的Android应用。

范怀宇:资深Android开发工程师,毕业于清华大学,从事移动开发多年,对Android系统有颇为深入的研究,开发经验十分丰富。曾就职于网易有道,负责完成了有道词典Android版、网易掌上邮Android版、网易八方Android版等项目的开发工作,现就职于豌豆实验室 ,负责豌豆荚2.0版本的设计和开发。

作品目录

  • 前言
  • 为什么要写这本书
  • 本书主要内容
  • 本书特色
  • 本书面向的读者
  • 如何阅读本书
  • 资源及勘误
  • 致谢
  • 第1章 Android的系统架构
  • 1.1 Android系统架构概况
  • 1.1.1 应用层
  • 1.1.2 框架层
  • 1.1.3 运行时
  • 1.1.4 核心类库
  • 1.1.5 硬件抽象层和Linux内核
  • 1.2 Android的核心功能模块
  • 1.2.1 界面框架
  • 1.2.2 数据存储
  • 1.2.3 网络通信
  • 1.2.4 地理信息
  • 1.2.5 图形和多媒体处理
  • 1.2.6 外部设备
  • 1.2.7 特色功能模块
  • 1.3 Android的架构特征和设计思想
  • 1.3.1 平台开放性
  • 1.3.2 基于组件的应用设计
  • 1.3.3 基于网络服务的平台
  • 1.4 小结
  • 第2章 Android源代码的下载和编译
  • 2.1 Android源代码的获取和编译
  • 2.1.1 环境搭建
  • 2.1.2 源代码获取
  • 2.1.3 源代码的编译
  • 2.2 Android源代码结构
  • 2.2.1 框架层源代码目录frameworks
  • 2.2.2 应用层源代码目录packages
  • 2.2.3 其他源代码目录
  • 2.3 Android源代码的阅读和编辑
  • 2.3.1 用Eclipse阅读源代码
  • 2.3.2 反馈Bug
  • 2.3.3 提交修改
  • 2.4 小结
  • 第3章 Android组件模型解析
  • 3.1 基于Mashup的应用设计
  • 3.1.1 Android中的Mashup
  • 3.1.2 基于Mashup的Android应用模型
  • 3.1.3 基于Mashup的应用架构特征
  • 3.2 界面组件Activity解析
  • 3.2.1 界面组件的功能和特征
  • 3.2.2 界面组件的开发
  • 3.2.3 界面组件的数据结构
  • 3.3 服务组件Service解析
  • 3.3.1 服务组件的功能和特征
  • 3.3.2 服务组件的开发和使用
  • 3.3.3 服务组件的进程间通信模型
  • 3.4 触发器组件Broadcast Receiver解析
  • 3.4.1 触发器组件的功能和特征
  • 3.4.2 触发器组件的使用
  • 3.4.3 广播事件的发送
  • 3.5 数据源组件Content Provider解析
  • 3.5.1 数据源组件的定位和操作
  • 3.5.2 数据源组件的开发
  • 3.5.3 数据源组件的实现细节
  • 3.6 应用配置文件解析
  • 3.6.1 权限配置
  • 3.6.2 环境配置
  • 3.6.3 应用和组件配置
  • 3.7 小结
  • 第4章 Android的Intent机制
  • 4.1 Intent对象的作用和构成
  • 4.1.1 Intent对象的作用
  • 4.1.2 Intent对象的构成
  • 4.1.3 Intent对象解析
  • 4.1.4 Intent Filter对象
  • 4.2 意图匹配
  • 4.2.1 意图匹配的算法流程
  • 4.2.2 匹配组件的选择
  • 4.2.3 意图匹配的优化
  • 4.3 意图机制的应用
  • 4.3.1 意图机制在界面组件中的应用
  • 4.3.2 意图机制在服务组件中的应用
  • 4.3.3 意图机制在触发器组件中的应用
  • 4.4 小结
  • 第5章 组件生命周期解析
  • 5.1 应用进程模型
  • 5.1.1 应用、组件和进程
  • 5.1.2 组件的应用进程配置
  • 5.2 应用进程托管
  • 5.2.1 为什么需要进程托管
  • 5.2.2 进程优先级
  • 5.2.3 进程回收算法
  • 5.2.4 进程的强行终止
  • 5.2.5 掌控进程的优先级
  • 5.3 组件的生命周期模型
  • 5.3.1 界面组件的生命周期
  • 5.3.2 服务组件的生命周期
  • 5.3.3 触发器组件的生命周期
  • 5.3.4 数据源组件的生命周期
  • 5.3.5 应用环境的生命周期
  • 5.4 任务和界面组件栈
  • 5.4.1 界面组件的运行模式
  • 5.4.2 组件的任务黏度
  • 5.4.3 实际应用中的任务控制
  • 5.5 小结
  • 第6章 组件间的数据传输
  • 6.1 利用Intent对象进行数据传输
  • 6.1.1 利用Intent对象回传数据
  • 6.1.2 利用Intent对象传递数据的优缺点
  • 6.2 利用文件进行数据共享
  • 6.2.1 利用文件进行数据共享的实现
  • 6.2.2 利用文件进行数据共享的优缺点
  • 6.3 利用应用环境的全局数据共享
  • 6.3.1 利用应用环境对象共享数据的实现
  • 6.3.2 利用应用环境对象共享数据的优缺点
  • 6.4 利用组件共享数据
  • 6.4.1 利用数据源组件共享数据
  • 6.4.2 利用服务组件共享数据
  • 6.5 小结
  • 第7章 Android控件解析
  • 7.1 Android的控件框架
  • 7.1.1 Android控件构成
  • 7.1.2 Android交互事件传输
  • 7.1.3 Android控件属性
  • 7.1.4 控件的丈量和绘制
  • 7.2 Android的窗口机制
  • 7.2.1 窗口机制的基本原理
  • 7.2.2 界面组件和窗口
  • 7.2.3 对话框
  • 7.2.4 弹出窗口
  • 7.3 Android的基本控件介绍
  • 7.3.1 文本控件
  • 7.3.2 图像控件
  • 7.3.3 Surface控件
  • 7.3.4 Layout控件
  • 7.3.5 适配器控件
  • 7.3.6 选项卡控件
  • 7.3.7 浏览器控件
  • 7.4 自定义控件
  • 7.4.1 控件的定制
  • 7.4.2 复合控件
  • 7.4.3 自绘控件
  • 7.5 Android界面新发展
  • 7.5.1 动作栏
  • 7.5.2 界面片段
  • 7.5.3 重新定制选项卡
  • 7.5.4 交互界面的适配
  • 7.6 小结
  • 第8章 应用资源
  • 8.1 Android应用资源体系
  • 8.1.1 Android的应用资源构成
  • 8.1.2 应用资源的适配
  • 8.1.3 应用资源的动态匹配
  • 8.2 应用资源的调用
  • 8.2.1 应用资源的编译和R类
  • 8.2.2 应用资源的管理
  • 8.2.3 使用应用资源
  • 8.3 应用资源的类型
  • 8.3.1 界面和样式
  • 8.3.2 字符串和常量
  • 8.3.3 图像、图形和动画
  • 8.3.4 其他资源文件
  • 8.4 小结
  • 第9章 数据存储
  • 9.1 Android的文件系统
  • 9.1.1 Android的目录结构
  • 9.1.2 Android的应用数据存储
  • 9.1.3 Android的文件操作
  • 9.2 使用设置文件
  • 9.2.1 设置文件的存储和使用
  • 9.2.2 设置界面组件
  • 9.3 使用数据库
  • 9.3.1 Android数据库实现
  • 9.3.2 Android数据库的使用
  • 9.4 存储在云端
  • 9.4.1 云端存储的架构
  • 9.4.2 云端存储的使用
  • 9.5 小结
  • 第10章 网络通信
  • 10.1 Web通信
  • 10.1.1 基于HTTP的网络连接
  • 10.1.2 联网方式的选择
  • 10.1.3 WiFi的管理
  • 10.2 蓝牙
  • 10.2.1 Android的蓝牙实现
  • 10.2.2 基于蓝牙的通信
  • 10.3 近场通信
  • 10.3.1 基于NFC的识别和通信
  • 10.3.2 基于NFC的点对点通信
  • 10.4 基于WiFi连接的P2P通信
  • 10.4.1 Android 4.0的P2P连接实现
  • 10.4.2 使用Socket进行数据传输
  • 10.5 小结
  • 第11章 地理信息服务
  • 11.1 Android的定位服务
  • 11.1.1 定位服务框架
  • 11.1.2 位置信息源
  • 11.1.3 定位选择
  • 11.1.4 定位实例
  • 11.2 Android的地址服务
  • 11.2.1 地址服务的框架
  • 11.2.2 使用地址服务
  • 11.3 Android的地图服务
  • 11.3.1 使用地图
  • 11.3.2 其他使用地图服务的方式
  • 11.4 小结
  • 第12章 多媒体处理
  • 12.1 Android的图像处理
  • 12.1.1 图像的表示
  • 12.1.2 图像的读取和输出
  • 12.1.3 图像的呈现
  • 12.1.4 图像的管理
  • 12.2 Android的音视频处理
  • 12.2.1 Android音视频的支持框架
  • 12.2.2 Android音视频的播放
  • 12.2.3 Android音视频的录制
  • 12.3 Android中相机的使用
  • 12.4 小结
  • 第13章 其他重要模块
  • 13.1 通话和短信
  • 13.1.1 Android的通话和短信框架
  • 13.1.2 通话的处理
  • 13.1.3 短信的发送和接收
  • 13.2 App Widget的使用和实现
  • 13.2.1 Android的App Widget框架
  • 13.2.2 App Widget的界面构造和Remote Views
  • 13.2.3 App Widget的事件处理和Pending Intent
  • 13.3 Android的应用内搜索
  • 13.3.1 Android应用内搜索实现框架
  • 13.3.2 为应用定制搜索功能
  • 13.3.3 全局搜索功能
  • 13.4 Android的全局通知机制
  • 13.4.1 全局通知的类型和实现
  • 13.4.2 Toast的使用
  • 13.4.3 状态栏通知
  • 13.5 Android联系人处理
  • 13.5.1 Android联系人数据存储框架
  • 13.5.2 Android联系人操作
  • 13.6 小结
展开全部