●章 Android开发基础 11.1 移动智能设备系统发展现状 11.2 Android系统基础 21.2.1 Android系统的发展现状 21.2.2 常见的Android设备 21.3 Android系统架构 31.3.1 最底层的操作系统层(OS)—C/C++实现 41.3.2 Android的硬件抽象层—C/C++实现 41.3.3 各种库(Libraries)和Android运行环境(RunTime)—中间层 51.3.4 应用程序框架(Application Framework) 61.3.5 应用程序(Application)—Java实现 61.4 Android和Linux的关系 61.4.1 Android继承于Linux 61.4.2 Android和Linux内核的区别 71.5 Android开发学习路线图 81.5.1 Android开发的两大方向 81.5.2 Android应用开发需要具备的基础知识 9第2章 搭建Android开发环境 112.1 Android Studio介绍 112.2 准备工作 122.2.1 系统要求 122.2.2 获取并安装JDK 122.3 官方方式获取并安装Android Studio 152.3.1 官方方式获取工具包 152.3.2 安装工具包 172.4 焚方方式获取并安装工具包 182.4.1 快速站点介绍 182.4.2 单独获取并安装Android Studio 192.4.3 单独获取并安装Android SDK 202.5 启动Android Studio 222.5.1 启动前的设置工作 222.5.2 正式启动 242.6 通过官网学习搭建环境 25第3章 Android Studio集成开发环境介绍 273.1 Welcome to Android Studio面板 273.2 系统设置面板 283.3 系统默认设置面板 293.3.1 Appearance & Behavior(外观与行为)面板 303.3.2 Keymap(快捷键)面板 323.3.3 Editor(编辑器)面板 333.4 主界面面板 343.4.1 菜单栏 353.4.2 工具栏 373.4.3 左侧面板 383.4.4 中间编辑区域 393.4.5 底部调试区域 403.4.6 右侧模式面板 42第4章 Android Studio常见操作 434.1 新建一个新工程 434.2 Android SDK操作 474.2.1 Android SDK管理器操作 484.2.2 设定Android SDK Location 494.2.3 安装/删除/更新Android SDK 504.2.4 集中管理Android SDK 544.3 AVD模拟器操作 564.3.1 创建新的AVD模拟器 574.3.2 启动AVD模拟器 614.3.3 修改AVD模拟器 624.3.4 删除AVD模拟器 634.4 导入/导出操作 644.4.1 导入一个既有Android Studio项目 644.4.2 导入一个既有Eclipse项目 664.5 导入/导出设置 694.5.1 Import Settings(导入设置) 694.5.2 Export Settings(导出设置) 694.6 个Android应用程序 704.6.1 使用Android Studio新建Android工程 704.6.2 编写代码和代码分析 714.6.3 调试程序 714.6.4 模拟器运行项目 724.6.5 真机运行项目 73第5章 分析Android应用程序文件的组成 765.1 两种目录结构概览 765.1.1 Project模式 765.1.2 Android模式 765.2 “app”目录 775.2.1 “java”子目录 775.2.2 “res”子目录 785.2.3 设置文件AndroidManfest.xml 795.3 “Gradle Scripts”目录 805.3.1 文件build.gradle 815.3.2 文件gradle.properties 815.3.3 文件settings.gradle 82第6章 Gradle技术基础 836.1 两种目录结构概览 836.1.1 安装Gradle 836.1.2 Gradle的主要功能 836.2 Android工程中的Gradle 846.2.1 文件app/build.gradle 846.2.2 “gradle”目录 856.2.3 根目录中的build.gradle 866.2.4 其他文件 866.3 和Android Studio相关的几个命令 866.4 Android Studio中的常见Gradle操作 876.4.1 查看并编译源码 876.4.2 创建二进制发布版本 886.4.3 Gradle多渠道打包 906.4.4 自定义BuildConfig 92第7章 UI界面布局 937.1 View视图组件 937.1.1 View的常用属性和方法 937.1.2 Viewgroup容器 947.1.3 ViewManager类 947.2 Android UI布局的方式 947.2.1 使用XML布局 957.2.2 在Java代码中控制布局 957.3 Android布局管理器详解 967.3.1 Android布局管理器概述 967.3.2 线性布局LinearLayout 987.3.3 相对布局RelativeLayout 997.3.4 帧布局FrameLayout 1017.3.5 表格布局TableLayout 1017.3.6 绝对布局AbsoluteLayout 1027.3.7 网格布局GridLayout 1037.3.8 实战演练—演示各种基本布局控件的用法 104第8章 Material Design设计语言 1108.1 Material Design概述 1108.2 Material Design设计原则 1118.3 环境因素:属性和阴影 1118.4 动画设计 1128.4.1 感知动作 1128.4.2 响应式交互 1128.5 实战演练—使用Material Design 1138.5.1 项目概览 1138.5.2 程序文件 1148.5.3 布局文件 1208.5.4 实现测试程序 125第9章 核心组件介绍 1319.1 Widget组件 1319.1.1 创建一个Widget组件 1319.1.2 使用按钮Button 1329.1.3 使用文本框TextView 1339.1.4 使用编辑框EditText 1359.1.5 使用多项选择控件CheckBox 1369.1.6 使用单项选择控件RadioGroup 1389.1.7 使用下拉列表控件Spinner 1399.1.8 使用自动完成文本控件AutoCompleteTextView 1429.1.9 使用日期选择器控件DatePicker 1439.1.10 使用时间选择器TimePicker控件 1449.1.11 联合应用DatePicker和TimePicker 1459.1.12 使用滚动视图控件ScrollView 1489.1.13 使用进度条控件ProgressBar 1489.1.14 使用拖动条控件SeekBar 1499.1.15 使用评分组件RatingBar 1509.1.16 使用图片视图控件ImageView 1519.1.17 使用切换图片控件ImageSwitcher和Gallery 1529.1.18 使用网格视图控件GridView 1559.1.19 使用标签控件Tab 1569.2 使用MENU友好界面 1589.2.1 MENU基础 1589.2.2 实战演练—使用MENU控件 1589.3 使用列表控件ListView 1609.4 使用对话框控件 1629.4.1 对话框基础 1629.4.2 实战演练—在屏幕中使用对话框显示问候语 1630章 Android事件处理 16910.1 基于监听的事件处理 16910.1.1 监听处理模型中的3种对象 16910.1.2 Android系统中的监听事件 17110.1.3 实现事件的方法 17210.2 基于回调的事件处理 17710.2.1 Android事件侦听器的回调方法 17710.2.2 基于回调的事件传播 17910.2.3 重写onTouchEvent方法响应触摸屏事件 18110.3 响应的系统设置的事件 18210.3.1 Configuration类详解 18310.3.2 重写onConfigurationChanged响应系统设置更改 18510.4 Handler消息传递机制 1861章 图形图像和动画处理 19111.1 Android绘图基础 19111.1.1 使用Canvas画布 19111.1.2 使用Paint类 19311.1.3 位图操作类Bitmap 19511.2 使用其他的绘图类 19811.2.1 使用设置文本颜色类Color 19811.2.2 使用矩形类Rect和RectF 19911.2.3 使用变换处理类Matrix 20311.2.4 使用BitmapFactory类 20511.3 使用Drawable实现动画效果 20811.3.1 Drawable基础 20811.3.2 使用Drawable实现动画效果 20811.4 Tween Animation动画详解 20911.4.1 Tween动画基础 21011.4.2 Tween动画类详解 21311.4.3 Tween应用实战 21511.5 实现Frame Animation动画效果 21611.5.1 Frame动画基础 21611.5.2 使用Frame动画 21711.6 Property Animation动画 21811.6.1 Property Animation(属性)动画基础 21911.6.2 使用Property Animation 22011.7 实现动画效果的其他方法 22311.7.1 播放GIF动画 22311.7.2 实现EditText动画特效 2252章 开发音频/视频应用程序 22712.1 音频应用接口类概述 22712.2 AudioManager类 22812.2.1 AudioManager基础 22812.2.2 AudioManager基本应用—设置短信提示铃声 23012.3 录音处理 23312.3.1 使用MediaRecorder接口录制音频 23312.3.2 使用AudioRecord接口录制音频 23412.4 播放音频 23612.4.1 使用AudioTrack播放音频 23712.4.2 使用MediaPlayer播放音频 23712.4.3 使用SoundPool播放音频 23912.4.4 使用Ringtone播放铃声 24012.4.5 使用JetPlayer播放音频 24012.4.6 使用AudioEffect处理音效 24112.5 语音识别技术 24312.5.1 Text-To-Speech技术 24312.5.2 谷歌的Voice Recognition技术 24612.6 实现振动功能 24812.7 设置闹钟 24912.7.1 AlarmManage基础 24912.7.2 开发一个闹钟程序 25012.8 使用MediaPlayer播放视频 2543章 GPS地图定位 26013.1 位置服务 26013.1.1 类location详解 26013.1.2 实战演练—在Android设备中实现GPS定位 26113.2 随时更新位置信息 26213.2.1 库Maps中的类 26213.2.2 使用LocationManager监听位置 26313.2.3 实战演练—监听当前设备的坐标和海拔 26413.3 在Android设备中使用地图 27013.3.1 申请Google Map API密钥 27013.3.2 使用Map API密钥的注意事项 27313.3.3 使用Map API密钥 27413.3.4 实战演练—在Android设备中使用谷歌地图实现定位 27513.4 接近警报 27913.4.1 类Geocoder基础 27913.4.2 Geocoder的公共构造器和公共方法 2814章 Android传感器应用开发详解 28314.1 Android传感器系统概述 28314.2 Android传感器应用开发基础 28314.2.1 查看包含的传感器 28314.2.2 模拟器测试工具—SensorSimulator 28514.2.3 实战演练—检测当前设备支持的传感器 28814.3 使用光线传感器 29014.3.1 光线传感器介绍 29014.3.2 使用光线传感器的方法 29114.4 使用磁场传感器 29114.4.1 什么是磁场传感器 29214.4.2 Android系统中的磁场传感器 29214.5 使用加速度传感器 29214.5.1 加速度传感器的分类 29314.5.2 Android系统中的加速度传感器 29314.6 使用方向传感器 29414.6.1 方向传感器基础 29414.6.2 Android中的方向传感器 29514.7 使用陀螺仪传感器 29514.7.1 陀螺仪传感器基础 29614.7.2 Android中的陀螺仪传感器 29614.8 使用旋转向量传感器 29714.9 使用距离传感器详解 29814.9.1 距离传感器介绍 29814.9.2 Android系统中的距离传感器 29914.10 使用气压传感器 30014.10.1 气压传感器基础 30114.10.2 气压传感器在智能中的应用 30114.11 使用温度传感器 30114.11.1 温度传感器介绍 30214.11.2 Android系统中温度传感器 30214.12 使用湿度传感器 3045章 编写安全的应用程序 30615.1 Android安全机制概述 30615.1.1 Android的安全机制模型 30715.1.2 Android具有的权限 30715.1.3 Android的组件模型(Component Model) 30815.1.4 Android安全访问设置 30815.2 声明不同的权限 30915.2.1 AndroidManifest.xml文件基础 30915.2.2 声明获取不同的权限 30915.2.3 自定义一个权限 31315.3 发布Android程序生成APK 31415.3.1 什么是APK文件 31415.3.2 申请会员 31515.3.3 生成签名文件 31815.3.4 使用签名文件 32315.3.5 发布到市场 3256章 Google Now和Android Wear详解 32616.1 Google Now概述 32616.1.1 搜索引擎的升级—Google Now 32616.1.2 Google Now的用法 32716.2 什么是Android Wear 32816.3 开发Android Wear程序 32916.3.1 创建通知 32916.3.2 创建声音 33116.3.3 给通知添加页面 33316.3.4 通知堆 33416.3.5 通知语法介绍 33516.4 实战演练—开发一个Android Wear程序 3367章 Android应用优化详解 34117.1 用户体验是产品成功的关键 34117.1.1 什么是用户体验 34117.1.2 影响用户体验的因素 34217.1.3 用户体验设计目标 34217.2 Android优化概述 34317.3 UI布局优化 34317.3.1 标签在UI界面中的优化作用 34317.3.2 遵循Android Layout优化的两段通用代码 34617.3.3 优化Bitmap图片 34717.3.4 FrameLayout布局优化 34817.3.5 使用Android为我们提供的优化工具 35217.4 Android Lint静态分析 35917.4.1 使用Android Lint 36017.4.2 解决错误 36117.4.3 自定义Android Lint的检查提示 36217.4.4 检查工程依赖的库 36417.5 使用Memory Monitor内存分析工具 36517.6 Code CleanUp(代码清理) 36717.7 使用第三方工具 3688章 Android TV开发详解 36918.1 Android TV概述 36918.2 系统模块结构 37018.3 系统主界面 37018.3.1 系统主界面布局 37118.3.2 系统主界面Activity 37218.4 本地服务 37718.4.1 本地服务主界面 37718.4.2 应用程序管理界面 380
内容简介
全书共分18章,依次讲解了Android开发基础、搭建Android开发环境、Android Studio集成开发环境介绍、Android Studio常见操作、分析Android应用程序文件的组成、Gradle技术基础、UI界面布局、Material Design设计语言、核心组件介绍、Android事件处理、图形图像和动画处理、开发音频/视频应用程序、GPS地图定位、Android传感器应用开发、编写安全的应用程序、Google Now和Android Wear、Android应用优化以及Android TV开发。本书几乎涵盖了Android Studio应用开发所能涉及的所有领域,在讲解每一个知识点时,都遵循了理论实际的讲解方尸用具体实例有效剖析了Android Studio开发的每一个知识点。本书讲解方法通俗易懂,特别有利于初学者学习并消化。本书适合Android初级读者、......