课程内容包含Android基础、Android高级和多个Android实战项目,涵盖业界最新流行的 Android 开发技术,特别适合于大专院校计算机专业的学生
* 第一章 Java基础/
* 第一节 java入门/
* 课程介绍
* Java语言发展史和平台概述
* JVM,JRE,JDK的概述
* 常用DOS命令
* JDK的下载和安装
* HelloWorld案例的编写和运行
* HelloWorld案例常见问题
* Path环境变量的配置
* Notepad软件的安装和配置
* 注释的概述和分类
* 关键字的概述和特点
* 常量的概述和分类
* 变量的概述和定义格式
* 计算机存储单元概述
* 数据类型概述和分类
* 标识符的组成和注意事项
* 标识符的常见命名规则
* 基本数据类型变量的定义和使用
* 变量定义的注意事项
* 类型转换之隐式转换
* 隐式转换图解
* 类型转换之强制转换
* Eclipse的概述和安装
* Eclipse的基本使用
* Eclipse工作空间的基本配置
* Eclipse中内容辅助健和快捷键的使用
* Eclipse中项目的删除和导入
* 第二节 java基础/
* 算术运算符的基本用法
* 算术运算符取余和除法的区别
* 字符和字符串参与加法运算
* 算术运算符++和--的用法
* 赋值运算符的基本用法和扩展用法
* 关系运算符的用法和注意事项
* 逻辑运算符的基本用法
* 逻辑运算符&&和&的区别
* 三元运算符的基本用法
* 三元运算符练习之比较两个数是否相同
* 三元运算符练习之获取三个数中的最大值
* 键盘录入的基本步骤和使用
* 键盘录入练习之两个数据求和
* 键盘录入练习之比较两个数据是否相等
* 键盘录入练习之获取三个数据的最大值
* 顺序结构的基本使用
* if语句格式1的基本使用
* if语句格式2的基本使用
* if语句格式3的基本使用
* if语句练习之获取两个数据的最大值
* if语句练习之根据分数输出对应级别
* switch语句的格式解释和执行流程
* switch语句根据键盘录入数字输出对应星期
* for循环语句的基本格式及使用
* for循环练习之获取1-5和5-1的数据
* for循环练习之1-5的数据求和
* for循环练习之求1-100之间的偶数和
* for循环练习之打印水仙花数
* for循环练习之统计水仙花的个数
* Random的概述和基本使用
* Random练习之猜数字小游戏案例
* 数组概述和定义格式
* 数组初始化之动态初始化
* 数组中的元素访问
* Java中的内存分配图解
* 一个数组的内存图
* 两个数组的内存图
* 两个数组指向同一个地址的内存图
* 数组初始化之静态初始化
* 方法定义格式及格式解释
* 求和方法的编写
* 求和方法的调用
* 求和方法的调用图解
* 方法练习之获取两个数据中的较大值
* 方法练习之比较两个数据是否相等
* 方法练习之获取三个数据中的较大值
* void修饰的方法的调用
* 方法练习之打印1到n之间的数据
* 方法练习之打印所有的水仙花数
* 方法重载的概述和基本使用
* 方法重载练习之比较数据是否相等
* 断点调试的作用及步骤
* 断点调试查看循环求和执行流程
* 断点调试查看方法调用执行流程
* 断点调试查看形式参数是基本类型的情况
* 断点调试查看形式参数是引用类型的情况
* 基础语法练习之根据月份输出对应季节
* 基础语法练习之根据月份输出对应季节2
* 基础语法练习之打印回文数
* 基础语法之不死神兔问题
* 基础语法练习之求满足要求的数组元素和
* while循环语句的基本格式及使用
* while循环练习之求1-100数据和
* do...while循环语句的基本格式及使用
* 三种循环的区别
* 跳转控制语句break的概述和基本使用
* 控制跳转语句continue的概述和基本使用
* 控制跳转语句练习分析程序写结果
* 数组操作的两个常见小问题
* 数组操作之遍历数组
* 数组操作之获取最值
* 二维数组的概述和基本使用
* 二维数组操作之遍历二维数组
* 方法的形式参数是基本类型
* 方法的形式参数是基本类型图解
* 方法的形式参数是引用类型
* 方法的形式参数是引用类型图解
* 方法的练习之数组遍历
* 方法的练习之数组获取最值
* 方法的练习之数组元素求和
* 基础语法练习之评委打分问题
* 基础语法练习之数组元素反转分析
* 基础语法练习之数组元素反转代码实现
* 基础语法练习之数组基本查找
* 基础语法之数据加密分析
* 基础语法之数据加密代码实现
* 第三节 面向对象/
* 面向过程和面向对象思想概述
* 面向对象思想特点及举例
* 类与对象概述
* 两个引用指向同一个对象的内存图
* 成员变量和局部变量的区别
* private关键字的由来及使用
* 成员变量私有的标准代码
* 封装的概述和好处
* this关键字的由来及使用
* 构造方法的格式
* 构造方法的注意事项及重载
* 标准的学生类代码编写和测试
* 类名作为形式参数传递
* 类名作为返回值类型
* 学生类和学生事物的对应关系
* 学生类的定义
* 学生类的使用
* 手机类的定义和使用
* 一个对象的内存图
* 方法共用的内存图
* 第四节 核心API的使用/
* API概述及使用步骤
* 键盘录入一个字符串数据
* String类的概述和构造方法
* 字符串对象构造方法创建和直接赋值的区别
* String类的判断功能
* 字符串练习之数组元素按格式拼接
* 字符串练习之字符串反转
* StringBuilder的概述
* StringBuilder的构造方法
* StringBuilder的添加功能和反转功能
* StringBuilder和String的相互转换
* StringBuilder练习之数组元素按格式拼接
* StringBuilder练习之字符串反转
* StringBuilder练习之判断对称字符串
* 为什么会出现集合类
* 创建ArrayList集合对象并添加元素
* ArrayList集合的增删改查方法
* ArrayList集合的遍历
* ArrayList练习之存储字符串并遍历
* ArrayList练习之获取满足要求的元素
* ArrayList练习之存储自定义对象并遍历
* ArrayList练习之键盘录入数据存储并遍历
* 学生管理系统项目演示
* 学生管理系统之标准学生类
* 学生管理系统之主界面和选择的实现
* 学生管理系统之查询所有学生
* 学生管理系统之添加学生
* 学生管理系统之添加学生解决学号重复问题
* 学生管理系统之删除学生
* 学生管理系统之修改学生
* 模拟用户登录
* String类的获取功能
* 字符串的遍历
* 统计字符串中大写,小写及数字字符个数
* String类的转换功能
* 把字符串首字母大写其他字母小写
* String类的去空格和分割功能
* 对象数组的练习
* 对象数组的内存图
* 第五节 IO流/
* IO流的概述和分类
* FileWirter写数据
* FileWriter写数据路径问题及关闭和刷新方法的区别
* FileWriter写数据的5个方法
* FileWriter写数据之换行和追加写
* FileReader读数据一次读取一个字符
* 一次读写一个字符复制文本文件
* FileReader读数据一次一个字符数组
* FileReader读取数据的两种方式图解
* 一次读写一个字符数组复制文本文件
* 缓冲流的基本使用
* 缓冲流复制文本文件的两种方式
* 缓冲流的特殊功能
* 缓冲流特殊功能复制文本文件
* 复制文本文件的5种方式
* 学生管理系统IO版图解
* 学生管理系统IO版之增删改查的集合版实现
* 学生管理系统IO版之读写数据
* 学生管理系统IO版本之代码实现
* 把集合中的数据写到文本文件
* 把文本文件中的数据读取到集合
* 把集合中的学生信息写入文本文件
* 把文件中的数据读到集合并遍历集合
* 第六节 类和接口/
* 基础语法回顾
* 方法的回顾
* 数组的回顾
* 定义标准的学生类
* 静态的概述和特点
* 静态的注意事项
* 静态的优缺点以及应用场景
* 自定义工具类
* 代码块的概述
* 代码块的面试题
* 继承的概述
* 继承的特点
* 继承中成员变量的特点
* 继承中成员方法的特点
* 方法重写的应用场景和注意事项
* 继承中的构造方法执行顺序
* this和super的区别
* 继承的优缺点
* 抽象类的概述
* 抽象类的特点
* 抽象类的成员特点
* 抽象类案例(老师)
* 抽象类案例(雇员)
* 抽象类案例(技师)
* 抽象类的细节
* 抽象的思想
* 接口的概述
* 接口的成员特点
* 接口和类之间的各种关系
* 接口的思想
* 接口的优点
* 接口与抽象类的区别
* 运动员案例分析
* 运动员案例实现
* 匿名对象的概述和应用场景
* final的概述和作用
* 多态的概述和实现
* 多态成员的特点
* 多态中的向上转型和向下转型
* 多态的优缺点
* 包的作用和特点
* 不同包之间的互相访问
* 权限修饰符
* 内部类的概述
* 成员内部类的概述和使用
* 成员内部类的修饰符
* 局部内部类的概述和使用
* 匿名内部类的概述和格式
* 匿名内部类的应用场景
* Object的toString方法
* Object的equals方法
* System类的概述和常用方法
* Date类的概述和构造
* Date类的常用方法
* SimpleDateFormat的概述
* SimpleDateFormat的功能测试
* Calendar的概述和测试
* 包装类的概述和基本使用
* 自动装箱和拆箱
* 正则表达式的概述
* 第七节 集合和IO进阶/
* 集合的体系结构
* Collection中的常用功能
* 迭代器的概述和测试
* 并发修改异常
* 泛型的概述和体现
* 常见数据结构(数组)
* 常见数据结构(链表)
* 常见数据结构(栈&队列)
* List的特点和特有功能
* List的子类概述和LinkedList的特有功能
* Set接口的特点
* HashSet存储自定义对象并遍历
* 通过查看HashSet的add()方法查找不能去重的原因
* foreach的概述和测试
* 重写hashCode方法和equals方法实现HashSet存储自定义对象去重
* hashCode方法和equals方法的优化
* Collections工具类
* 模拟斗地主发牌
* Map接口的概述
* Map的功能概述和测试
* keySet和values的测试
* Map的第一种遍历方式
* Map的第二种遍历方式
* HashMap存储数据并遍历(String作为key)
* HashMap存储数据并遍历(自定义对象作为key)
* 异常的概述和体系结构
* jvm处理异常的方式和try...catch处理异常
* 异常的抛出
* 如何处理多个异常
* Throwable的常用方法
* finally的概述和应用场景
* 异常的分类
* 自定义异常
* 递归的概述
* 递归求5阶乘图解
* 使用Debug分析递归算法执行流程
* 斐波那契列数
* File类的概述和常用功能
* File类的创建和删除功能
* File类的判断功能
* File类的获取功能和修改名字功能
* File的重要获取功能
* 输出指定目录下所有的java文件名(包含子目录)
* 删除指定的目录(包含子目录)
* IO流的分类
* 字符流复制文本文件
* InputStream和OutputStream的概述
* 分别使用字符流和字节流进行图片的复制
* 字节流复制文本文件
* 标准输入输出流概述
* OutputStreamWriter的概述和使用
* InputStreamReader的概述和使用
* 打印流的概述
* 打印流特有功能
* 使用打印流复制文本文件
* Properties的概述
* Properties和IO流结合的功能
* 对象操作流的概述
* 使用对象操作流读写对象
* 解决对象输入流读取对象出现异常的问题
* 解决对实现序列化接口出现的黄色警告问题
* 第八节 进程与线程/
* 多线程的概述
* 多线程的实现方式1
* 主方法是单线程的
* 多线程的实现方式2
* 多线程模拟火车站售票出现问题
* 分析火车站售票出现问题原因
* 使用同步代码块解决多线程案例中出现的问题
* 线程的生命周期
* 同步方法
* 第九节 网络编程/
* 网络编程的概述
* 网络通信中的三要素
* InetAddress的概述和测试
* UDP协议发送数据
* UDP协议接收数据
* UDP协议收发数据注意事项
* TCP协议发送数据
* TCP协议接收数据
* 用TCP协议发送数据并将接收到的数据转换成大写返回
* 模拟用户登陆
* 模拟用户登录案例改写
* 第十节 反射/
* Junit单元测试end
* 反射--类的加载
* 反射--概述
* 反射--准备数据
* 反射--Class获取end
* 反射--构造方法和实例
* 反射--普通方法--public方法
* 反射--普通方法--private方法
* 反射--普通方法--main方法
* 反射--字段--public操作
* 反射--字段--private操作
* properties--概述和基本操作
* properties--存储与加载
* 反射综合案例--需求与分析
* 反射综合案例--实现--创建测试JavaBean
* 反射综合案例--实现--创建配置文件
* 反射综合案例--实现--创建BeanConfig
* 反射综合案例--实现--解析Properties
* 反射综合案例--实现--使用BeanConfig数据
* 反射综合案例--实现--整合
* 反射--构造方法和实例--私有构造
* 第二章 Android基础阶段/
* web基础之html入门/
* html的简介之什么是html
* html的简介之操作思想
* 字体标签和注释标签
* 列表标签
* 图形标签
* 超链接标签
* 表单标签(上)
* 表单标签(中)
* 表单标签(下)
* 其他标签
* 表格标签(上)
* 表格标签(下)
* 注册案例(上)
* 注册案例(下)
* web基础之css入门/
* css的简介
* css和html的结合方式
* css的选择器(上)
* css的选择器(中)
* css的选择器(下)
* web基础之JavaScript入门/
* js的简介
* js与html的结合方式
* js的原始类型和变量声明
* js的引用类型和类型转换
* js的语句
* 练习99乘法表
* js的运算符
* js的数组
* js的String对象(上)
* js的String对象(下)
* js的Array对象(上)
* js的Array对象(下)
* js的Math对象
* js的Date对象
* js的RegExp对象
* js的bom对象(上)
* js的bom对象(下)
* js的全局变量和局部变量
* js的全局函数
* js的函数的创建与使用(上)
* js的函数的创建与使用(下)
* web基础之JavaScript高级/
* js的事件的简介
* js的常用事件(上)
* js的常用事件(下)
* dom简介(上)
* dom简介(下)
* document对象(上)
* document对象(下)
* innerHTML属性
* 练习-动态生成表格
* 表单的提交方式
* 表单的校验
* json的简介
* js解析json
* json练习
* web基础之mysql数据库入门/
* 数据库的简介
* mysql的安装和卸载
* mysql的存储结构
* sql的简介
* 使用sql对数据库的操作
* 使用sql对表进行操作
* 使用sql对表中的记录进行操作(上)
* 使用sql对表中的记录进行操作(中)
* 使用sql对表中记录进行操作(下)
* 使用order by对表中记录进行排序
* 聚集函数(上)
* 聚集函数(下)
* 分组操作
* mysql可视化工具的使用
* limit关键字
* 重置mysql的root密码
* web基础之JDBC入门/
* JDBC简介
* JDBC入门案例
* JDBC的DriverManager对象
* JDBC的Connection对象和Statement对象
* JDBC的ResultSet对象
* JDBC释放资源
* 使用jdbc实现crud操作(上)
* 使用jdbc实现crud操作(下)
* jdbc工具类的封装(上)
* jdbc工具类的封装(中)
* jdbc工具类的封装(下)
* 使用jdbc工具类实现crud操作(上)
* 使用jdbc工具类实现crud操作(下)
* 登录操作
* sql注入的演示
* 使用预编译对象防止sql注入
* 使用预编译对象实现查询和增加操作
* 使用预编译对象实现修改和删除操作
* web基础之xml入门/
* xml的简介
* xml的文档声明和元素定义
* xml属性定义、注释和CDATA
* xml解析简介和dom解析
* sax解析xml
* pull解析的简介
* pull解析xml操作
* pull序列化操作
* web基础之tomcat入门/
* web相关概念的介绍
* web服务器介绍
* tomcat的安装和目录结构(上)
* tomcat的安装和目录结构(中)
* tomcat的安装和目录结构(下)
* 发布项目到tomcat(上)
* 发布项目到tomcat(下)
* myeclipse整合tomcat
* web基础之http协议入门/
* http协议简介
* 使用抓包工具查看http协议
* web基础之servlet入门/
* servlet的入门
* servlet的执行过程
* servlet的生命周期
* servlet开发的细节问题(上)
* servlet开发的细节问题(下)
* url-pattern的配置
* 开发中的路径问题(上)
* 开发中的路径问题(下)
* 重定向和转发
* ServletConfig对象(上)
* ServletConfig对象(下)
* ServletContext对象(上)
* ServletContext对象(下)
* 练习 统计网站访问次数
* 使用servletContext对象读取web项目中资源(一)
* 使用servletContext对象读取web项目中资源(二)
* 使用servletContext对象读取web项目中资源(三)
* 使用servletContext对象读取web项目中资源(四)
* 使用类加载器读取文件
* 默认servlet
* web基础之Request和Response入门/
* response的简介
* 重定向的案例分析
* 重定向的案例代码实现
* 定时跳转的案例
* 定时跳转的案例倒计时
* 设置响应体
* 验证码实现步骤的分析
* 代码实现验证码
* 刷新验证码
* 文件下载案例
* request获取请求数据和客户机信息
* request获取表单提交数据(上)
* request获取表单提交数据(下)
* request获取表单提交中文数据
* request域对象简介
* 重定向和转发的区别
* 转发案例分析
* 转发案例代码实现
* response的流的注意事项
* Android开发入门体验/
* 通讯制式
* Android的现状
* Android的发展和平台数据
* Android的体系结构
* 虚拟机的比较
* art模式
* android开发工具的获取
* 开发环境的目录结构
* helloworld工程&部署到模拟器
* adb常见指令
* 环境变量的配置
* ddms简介
* android工程的目录结构
* 电话拨号器
* 应用程序的权限
* 应用程序开发的流程
* 线性布局入门
* 线性布局综合案例
* 相对布局的使用
* 帧布局
* 表格布局和绝对布局
* 常见单位
* 小案例-qq大盗
* 点击事件的四种写法
* Android开发测试和打印日志/
* 测试相关的概念
* Android下的junit测试
* logcat使用
* Android开发文件操作/
* qq登陆的ui界面
* Android下的文件存储
* 方便api获取文件目录
* sd卡操作
* 文件的权限
* 文件的权限-创建公有的文件
* 文件访问权限
* sharedpreference保存数据
* 利用sp开发一个设置功能
* Android开发xml操作/
* 利用stringbuilder生成xml文件
* Stringbuilder生成xml文件注意的问题
* 采用xml序列化器生成xml文件
* xml文件的解析
* 采用调试的方式观察pull解析的流程
* Sqlite数据库/
* Android下如何创建数据库
* 创建数据库的表结构
* 数据库的升级更新
* 数据库增删改查的sql语句
* 数据库的增删改查的实现
* 对增删改查的方法进行单元测试
* 采用命令行查看sqlite数据库的内容
* 使用ListView实现列表/
* 学生管理系统界面的显示
* listview引入
* listview的使用
* 学生管理系统的升级
* listview的优化的原理
* listview的优化
* 采用打气筒创建view对象
* 通知数据适配器刷新数据
* 对话框/
* 常见对话框
* 删除学生信息的对话框
* 数据库的另外一种增删改查的方法
* 数据库的事务
* 常见数据适配器-simple和arrayAdapter
* 动画效果/
* android下的图形动画
* 样式和主题/
* 应用程序的国际化
* 样式和主题
* 联网操作/
* 网络图片查看器
* http请求的小细节
* ANR产生的原因
* 主线程模型
* android下的消息机制
* 网络图片查看器的完成
* 网页源码查看器
* useragent的使用
* 中文乱码问题的处理
* 访问网络获取手机归属地
* 天气预报案例-json数据的解析
* 新闻客户端的需求和服务器搭建
* 连接服务器解析数据
* 数据的界面展现&正在加载的进度
* 新闻文本界面的展现
* 利用开源框架加载显示图片
* smartimageview的原理
* smartimageview异常的处理
* Http请求/
* get方式提交数据-服务器搭建
* 采用get的方式提交数据到服务器
* POST请求和GET请求的区别
* POST方式提交数据到服务器
* 中文乱码问题的处理
* 中文乱码的补充-锟斤拷锟斤初体验
* 提交数据的中文问题
* 采用httpclient提交数据到服务器
* 采用开源框架get的方式提交数据到服务器
* 采用开源项目post数据到服务器
* 上传文件到服务器
* 为什么多线程可以提高下载速度
* 多线程下载的步骤
* 如何划分服务器的资源给不同的线程
* 多线程文件下载的实现
* 多线程断点下载的完成
* 多线程断点下载的小细节
* 多线程断点下载的移植
* 开源项目实现多线程断点下载
* Activity入门/
* 多界面应用程序的开发
* 人品计算器ui搭建
* 人品计算器的完成
* Activity的数据传递
* 隐式意图和显式意图
* 显式意图和隐式意图的特点
* 隐式意图的详细参数
* 利用隐式意图打开系统的浏览器
* 利用隐式意图激活短信发送的应用
* 短信助手的ui
* 开启新的界面获取返回值
* 请求码和结果码
* Activity的生命周期-创建和销毁
* Activity生命周期-显示与隐藏
* Activity生命周期-暂停和继续
* Activity生命周期的总结
* 横竖屏切换的生命周期
* Activity的任务栈
* singletop的启动模式
* singletask的启动模式
* singleinstance启动模式
* 广播/
* sd卡状态监听
* 开机启动的广播接收者
* 外拨电话的广播接收者
* 软件的安装和卸载
* 短信窃听器
* 不同版本系统广播接收者的特点
* 自定义广播消息和广播接收者
* 自定义有序广播
* 有序广播的特点
* 系统的一些广播接收者的类型
* 只能用代码注册的广播事件
* 服务/
* 需求_调用服务的方法
* 绑定服务调用服务方法的原理
* 服务内部代码的编写
* 绑定服务调用服务方法
* 绑定服务调用方法的回顾
* 通过接口隐藏代码内部实现的细节
* 绑定服务的生命周期
* 混合调用服务的生命周期
* 本地服务和远程服务
* aidl的编写步骤
* 绑定远程服务的应用场景
* 支付宝安全支付案例
* 系统服务
* 利用系统服务监听通话的状态
* 通话录音
* 服务概念入门
* 服务简单入门
* 进程的优先级
* 为什么需要使用服务
* 服务的生命周期
* 简易音乐播放器
* 内容观察者/
* 内容提供者的概念
* 内容提供者的工作方式
* 内容提供者的匹配规则
* 内容提供者的业务实现
* 学习内容提供者的目的
* 利用内容提供者添加删除用户的短信数据
* 小知识点-通知栏的提醒
* 装B神器
* 联系人数据库的表结构
* 利用内容提供者读取联系人
* 联系人内容提供者的工具类
* 删除联系人的细节
* 添加数据到联系人数据库
* 内容观察者
* 利用内容观察者观察短信数据库的变化
* 练习_利用内容提供者开发短信的备份和还原
* 多媒体/
* 计算机图形的表示方法
* 加载图片到内存_x
* 加载大图片到内存
* 图片的缩放
* 图片的平移旋转镜面和倒影效果
* 随手涂鸦的ui
* 随手涂鸦的核心逻辑
* 随手涂鸦的细节
* 撕衣服
* getX和getRawX区别
* 图片的颜色处理
* 音乐播放器的状态图
* 异步播放网络上的音乐文件
* soundpool
* 视频播放器
* SurfaceView子线程更新ui
* surfaceview生命周期的回调
* 采用surfaceview播放视频
* 照相机拍照
* 视频的录制
* 传感器/
* 传感器的使用
* 指南针
* Fragment/
* fragment简介
* fragment入门
* fragment的事务
* fragment与Activity的通讯
* fragment的生命周期
* fragment的向下兼容
* 属性动画/
* view动画
* 组合动画
* xml文件定义动画
* view动画的细节
* 属性动画
* 属性动画demo合集
* xml定义属性动画
* 反编译/
* 应用程序反编译
* Android Studio/
* Android Studio的简介
* Android Studio开发环境搭建
* Android Studio欢迎界面
* HelloWorld应用程序的创建
* 创建模拟器、部署HelloWorld应用程序
* Android Studio组成结构介绍
* Android Studio菜单栏的介绍
* Android Studio 快速工具栏
* Android Studio Project项目结构视图
* Android Studio Structure结构视图
* Android Studio的编辑区域
* Android Studio底部视图
* Gradle相关文件的介绍
* 项目其他文件目录的介绍
* 设置文件的编码
* 主题的设置
* 编辑区域字体的设置
* 行号和方法分割线的显示
* Logcat日志输入颜色的修改
* 窗体快捷键
* 常用的编辑快捷键
* 模糊匹配、文档提示
* 活动模板
* 后缀补全
* module的创建和删除
* 库的引入
* 插件的安装
* 导入eclipse和as项目
* Junit单元测试
* debug调试
* 5.0 新特性/
* 01_Matrial Design简介
* 02_Matrial Desing主题的使用
* 03_主题编辑器的使用
* 04_更换主题
* 05_阴影大小的指定
* 06_z轴的概念
* 07_设置产生阴影的提供者
* 08_代码设置阴影轮廓
* 09_指定阴影进行剪裁
* 10_tint染色完成选择器
* 11_通过Palette提取图片的颜色
* 12_矢量图像
* 13_5.0默认的背景点击动画
* 14_自定义圆形缩小动画
* 15_轨迹动画
* 16_状态动画
* 17_动画选择器
* 18_矢量图动画
* 19_转场动画
* 20_RecyclerView的使用
* 21_RecyclerView不同风格的展现、条目点击事件
* 22_RecyclerView瀑布流
* 23_CardView的使用
* 24_SwipeRefreshLayout的使用
* 25_ToolBar基本的使用
* 26_自定义Toolbar
* 27_DrawerLayout的使用
* 28_DrawerLayout和Toolbar联合使用
* 29_ofo App主界面的实现
* 6.0 新特性/
* 06_协调者布局、AppBarLayout、行为的基本使用
* 07_layout_scrollFlags属性的扩展
* 08_RecyclerView产生滑动行为
* 09_NestedScrollView产生行为
* 10_enterAlwaysCollapsed和exitUntilCollapsed的含义
* 11_沉浸式状态栏
* 12_CollapsingToolbarLayout的使用
* 13_支付宝滚动头
* 14_FloatingActionBar和SnackBar的使用
* 15_FloatingActionButton和CoordinatorLayout的配合使用
* 16_TextInputLayout和TextInputEditText的使用
* 17_自定义文本的选中模式
* 18_动态的权限申请
* 01_Android6.0新特性的介绍
* 02_NavigationView控件的使用
* 03_Navigation和Toolbar的使用
* 04_TabLayout的使用
* 05_行为原理分析
* 第三章 项目初级阶段/
* 安全卫士-项目分包&Splash界面/
* 手机卫士学习目标
* SVN版本控制
* 代码的组织方式
* splash界面_UI布局实现
* splash界面_版本更新业务分析
* splash界面_获取网络版本信息
* splash版本更新-版本比对不更新
* splash版本更新-提醒用户更新
* splah版本更新-下载apk的实现
* splash版本更新-安装apk的实现
* splash版本更新-网络错误的提示
* 安全卫士-Home界面&设置中心界面&手机防盗业务流程分析/
* Home页面_上部分布局的实现
* Home页面_Logo动画的实现
* Home页面_走马灯的实现
* Home页面_设置按钮的shape和selector
* 9patch图片的制作和使用
* Home页面_GridView的实现
* 设置中心布局的实现
* 组合式自定义控件和自定义属性
* SettingItemView其他自定义属性的实现
* 设置中心自动更新的实现
* 手机防盗-业务流程分析
* 安全卫士-密码输入框&向导界面/
* 手机防盗-密码输入框显示
* 手机防盗-密码设置框逻辑的实现
* 手机防盗-设置向导第一个布局的实现
* 手机防盗-设置向导其他布局的实现
* 手机防盗-向导界面动画的切换
* 手机防盗-向导界面的抽取
* 手机防盗-手势识别器的使用
* 手机防盗-手势识别首个页面bug的修复
* 手机防盗_sim卡绑定
* 手机防盗_设置安全号码
* 手机防盗_选择联系人页面的创建
* 手机防盗_系统联系人数据集获得
* 手机防盗_系统联系人图像获得
* 手机防盗_回显联系人号码
* ListView的Adapter优化
* 手机防盗-密码输入框逻辑的实现
* 安全卫士-手机防盗&设置界面/
* 手机防盗_设置完成界面的实现
* 手机防盗_防盗页面的布局的实现
* 手机防盗_防盗页面逻辑实现
* 手机防盗_开机重启判断手机丢失的逻辑
* 手机防盗_指令接收的逻辑实现
* 手机防盗_报警音乐的播放实现
* 手机防盗_手机定位原理介绍
* 手机防盗_GPS经纬度的获得
* 手机防盗_火星坐标的介绍
* 手机防盗_GPS位置追踪实现
* 手机防盗_设备管理员一键锁屏实现
* 手机防盗_一键锁屏激活操作
* 手机防盗一键锁屏卸载操作的实现
* 手机防盗_设备管理员向导界面实现
* 安全卫士-远程锁屏和擦除&骚扰拦截/
* 手机防盗_远程锁屏和擦除数据
* 骚扰拦截_黑名单数据库建表
* 骚扰拦截_黑名单数据库Dao的创建
* 骚扰拦截_dao测试用例
* 骚扰拦截_功能分析
* 骚扰拦截_页面布局的实现
* 骚扰拦截_自定义编辑框状态选择器
* 骚扰拦截_黑名单列表显示
* 骚扰拦截_黑名单添加的实现
* 骚扰拦截_黑名单更新的实现
* 骚扰拦截_黑名单删除的实现
* 骚扰拦截_加载进度的实现
* 骚扰拦截_空View的显示
* 骚扰拦截_分页查询SQL的实现
* 骚扰拦截_下拉加载更多的实现
* 骚扰拦截_拦截服务状态的显示
* 骚扰拦截_短信拦截功能的实现
* 骚扰拦截_电话拦截状态时机的实现
* 骚扰拦截_电话拦截AIDL文件的获得
* 骚扰拦截_电话挂断的逻辑实现
* 骚扰拦截_通话记录删除的逻辑实现
* 安全卫士-号码归属地查询/
* 常用工具_归属地UI实现
* 常用工具_归属地_ApiDemo源码使用
* 常用工具_手机归属地查询实现
* 常用工具_其他类型号码归属地查询实现
* 常用工具_号码动态查询
* 优化_GZip压缩的使用
* 安全卫士-常用号码&来电和去电归属地显示&自定义Toast/
* 常用号码_ExpandableListView介绍
* 常用号码_ExpandableListView的Adapter实现
* 常用号码_真实数据查询的实现
* 常用号码_Expandablelistview的点击实现
* 拨入拨出_归属地服务的新建
* 拨入拨出_归属地信息获取的逻辑
* Toast源码查看
* 自定义toast的实现
* 自定义toast拖动的实现
* 安全卫士-自定义Dialog/
* 拨入拨出_归属地自定义dialog的新建
* 拨入拨出_dialog自定义样式的实现
* 拨入拨出_dialog_Adapter的实现
* 拨入拨出_点击的实现
* 安全卫士-软件管家应用列表&PopupWindow/
* 软件管家_页面布局的实现
* 软件管家_progressStateView样式和方法的提供
* 软件管家_内部存储和sd存储信息的获得
* 软件管家_Adapter的实现
* 软件管家_应用程序数据的获得
* 软件管家_应用程序flags的含义和获取比对
* 软件管家_应用程序排序显示
* 软件管家_ListView条目头的添加
* 软件管家_PopupWindow的使用
* 软件管家_PopupWindow布局和动画实现
* 软件管家_应用卸载功能的实现
* 软件管家_应用打开和详情查询的实现
* 软件管家_shareSDK分享实现
* 软件管家_include标签的使用
* 安全卫士-进程管理&Widget/
* 进程管理_页面布局实现
* 进程管理_进程数的统计
* 进程管理_内存数据的获取
* 进程管理_Adapter简单实现
* 进程管理_数据封装和假数据的展示
* 进程管理_真实数据的获取
* 进程管理_数据排序和ui微调
* 进程管理_自定义Toast实现字母显示
* 进程管理_条目全选反选的实现
* 进程管理_杀死进程的实现
* 进程管理_其他UI细节的实现
* 进程管理_锁屏自动清理内存的实现
* 进程管理_不被杀死的前台服务
* Widget_窗口小部件显示实现的步骤
* Widget_窗口小部件的生命周期
* 反编译工具的介绍
* 反编译_获得资源文件
* Widget_小部件UI时时更新的实现
* Widget_一键清理IntentService实现方案
* Widget_时时更新UI的优化
* 异步任务_介绍
* 异步任务_AsyncTask的详细使用
* 异步任务_AsyncTask并发执行多任务
* 安全卫士-流量统计&短信备份还原&手势识别/
* 流量统计_页面布UI实现
* 流量统计_假数据的显示
* 流量统计_流量数据的获得
* 短信备份还原_读取系统短信
* 短信备份还原_存储系统短信
* 短信备份还原_接口抽取实现备份
* 短信备份还原_短信还原的实现
* 手势识别_代码查询和获得
* 手势识别_Api使用和修改
* 手势识别_绘制监听
* 安全卫士-程序锁/
* 程序锁_密码界面布局和分析
* 程序锁_Activity分流UI显示到Fragment
* 程序锁_密码设置fragment的创建
* 程序锁_密码向导跳转密码设置
* 程序锁_密码设置和密码确认布局跳转
* 程序锁_密码设置间动画的切换
* 程序锁_回退栈的监听
* 程序锁_密码设置业务逻辑的实现
* 程序锁_页面跳转的实现
* 程序锁_自定义分段控件布局实现
* 程序锁_分段控件接口声明实现
* 程序锁_程序锁页面Adpater的创建
* 程序锁_程序锁页面假数据显示和加载
* 程序锁_程序锁数据库创建
* 程序锁_程序锁加锁解锁的实现
* 程序锁_程序锁加锁解锁动画的实现
* AccessibilityService的介绍和使用
* 程序锁_程序锁AccesibilityService添加
* 程序锁_拦截页面显示处理
* 程序锁_拦截页面逻辑跳转的实现
* 程序锁_其他细节实现
* 安全卫士-缓存清理/
* 缓存清理_页面布局实现
* 缓存清理_Adapter的实现
* 缓存清理_ListView滚动扫描的实现
* 缓存清理_顶部扫描更新UI部分的切换实现
* 缓存清理_扫描线的动画和重新扫描的实现
* Settings源码解析获得应用程序的缓存大小
* 缓存清理_缓存清理数据的获得和展示
* 缓存清理_清理功能的实现
* 缓存清理_bug的fix
* 安全卫士-手机杀毒&项目辅助知识点/
* 手机杀毒_手机杀毒页面的创建
* 手机杀毒_获取真实数据的实现
* 手机杀毒_病毒数据判断实现
* 手机杀毒_自定义病毒程序校验
* 手机杀毒_顶部扫描逻辑的实现
* 手机杀毒_CircleProgress开源项目的使用
* 手机杀毒_扫描结束是打开动画的实现
* 手机杀毒_扫描左右图像的获得
* 手机杀毒_收尾
* 快捷图标的创建
* 自定义的Logger日志
* 上线应用程序异常的捕获原理&ACRA
* ACRA的toast和dialog配置
* Proguard代码混淆
* AndResGurad资源混淆
* 自定义控件-自定义控件基础绘制和布局处理/
* 01_自定义控件概述
* 02_自定义的继承关系和构造方法处理
* 03_利用canva绘制基本图形
* 04_利用path绘制机器耳朵(三条边的矩形)
* 05_利用path绘制人形耳朵(贝塞尔曲线)
* 06_canvas的平移,旋转和缩放
* 07_绘制文本
* 自定义控件-圆形菜单&饼状图点击/
* 08_饼状图分析
* 09_饼状图的数据处理
* 10_扇形的外接矩形的处理
* 11_扇形的绘制处理
* 12_直线的绘制
* 13_文本的绘制
* 01_自定义ViewGroup的onLayout方法介绍
* 02_自定义ViewGroup稍复杂小demo
* 03_圆形菜单的准备工作
* 04_圆形菜单子视图的摆放
* 05_onMeasure的MeasureSpec参数讲解
* 06_圆形菜单的外部测量处理
* 07_圆形菜单的子视图测量处理
* 08_饼状图-将点击位置转化为索引值
* 09_饼状图-点击效果的处理
* 10_圆形菜单的旋转
* 自定义控件-QQ气泡效果分析/
* 01_QQ气泡效果分析
* 02_QQ气泡效果-两个静态圆的绘制
* 03_QQ气泡效果-中间图形的绘制
* 04_QQ气泡效果-中间图形适配到两个静态圆上
* 05_QQ气泡效果-拖动效果实现
* 06_QQ气泡效果-随着拖拽距离固定圆半径的变化
* 07_QQ气泡效果-超出最大拖拽范围的处理
* 08_QQ气泡效果-move和up均超出最大范围的处理
* 09_QQ气泡效果-move超出并且up未超出,move和up均未超出最大范围的处理
* 10_QQ气泡效果-RecyclerView的列表实现
* 22_QQ气泡效果-解决RecyclerView带来的事件冲突问题
* 23_QQ气泡效果-GooView的消失和重置处理
* 24_QQ气泡效果-多次点击造成的bug
* 13_QQ气泡效果-事件分发基础
* 14_QQ气泡效果-事件分发的形象案例引入
* 15_QQ气泡效果-事件分发原理-孔融家的传统
* 16_QQ气泡效果-事件分发原理-情况1讲解
* 17_QQ气泡效果-事件分发原理-情况2讲解
* 18_QQ气泡效果-事件分发原理-情况3讲解
* 19_QQ气泡效果-事件分发原理-情况4讲解
* 20_QQ气泡效果-事件分发原理-情况5讲解
* 21_QQ气泡效果-事件分发原理-总结
* 11_QQ气泡效果-准备工作1绘制文本
* 12_QQ气泡效果-准备工作2修改GooView的位置
* 13_QQ气泡效果-为TextView设置触摸监听
* 14_QQ气泡效果-利用WindowManager添加GooView
* 15_QQ气泡效果-修复GooView的文本和位置
* 自定义控件-下拉刷新效果/
* 01_下拉刷新介绍
* 02_下拉刷新-划分区域
* 03_下拉刷新-添加自定义头部视图并隐藏
* 04_下拉刷新-头部管理器的处理
* 05_下拉刷新-定义边界
* 06_下拉刷新-将头部拉出
* 07_下拉刷新-定义状态提高效率
* 08_下拉刷新-文字和箭头随状态改变
* 09_下拉刷新-抬起手后隐藏头部
* 10_下拉刷新-抬起手后从释放刷新进入刷新中状态
* 11_下拉刷新-从刷新中还原到初始状态
* 12_下拉刷新-加入RecyclerView之后的事件处理(难点)
* 13_下拉刷新-内容视图变为其他视图后的处理
* 14_下拉刷新-SelfHeaderViewManager的基类抽取
* 15_下拉刷新-MeiTuan的SelfHeaderViewManger基本实现
* 16_下拉刷新-缩放和收尾的处理
* 17_作业-实现方式1
* 18_作业-实现方式2
* 19_作业-实现方式3
* 20_课外学习推荐
* 智慧北京-主界面架构&事件传递&主框架/
* 01-App主界面的架构组成
* 02-底部Tab的实现
* 03-ViewPager、Fragment、FragmentPagerAdapter整合
* 04-给RaidoGroup设置选择改变监听、切换ViewPager的页面
* 05-ViewPager页面滑动修改对应的tab选择
* 06-SlidingMenu的引入
* 07-面向对象概念加强
* 08-抽象类的抽取
* 09-接口的抽取
* 09-解耦合
* 10-事件传递核心方法的讲解
* 11-事件传递案例模型设计
* 12-事件传递简单认识
* 13-事件的分类
* 14-事件传递的原则
* 15-MyView处理事件
* 16-MyViewGroup拦截事件、处理事件
* 17-事件拦截的代码应该写在哪里?
* 18-子控件请求父控件不要拦截事件
* 19-事件传递源码查看
* 20-默认事件传递的整个过程细节
* 21-禁用主界面ViewPager的滑动事件
* 22-ButterKnift8的使用
* 23-Picasso显示网络图片
* 24-OkHttpUtils联网获取数据
* 25-HiJson工具查看json字符串
* 26-根据Json字符串的格式设计模型类
* 27-把json字符串转化成对应的模型对象
* 28-TabPagerIndicator的使用
* 智慧北京-开发流程&Splash界面&主界面/
* 01-软件公司的组成架构
* 02-软件开发的流程
* 03-开发文档
* 04-开发模式
* 05-智慧北京项目的演示
* 06-项目准备
* 07-项目基本框架的搭建
* 08-git仓库的创建
* 09-开发用户的添加
* 10-提交框架代码到仓库
* 11-Splash界面动画
* 12-延时2s进入向导界面
* 13-向导界面的ViewPager
* 14-开始体验按钮
* 15-创建红色和灰色的小圆点
* 16-小红点的移动
* 17-通过首选项记录是否体验过向导、进入主界面
* 18-底部tab的实现
* 19-ViewPager_Fragment_FragmentViewPager的实现
* 20-点击底部的tab切换ViewPager的页面
* 21-侧滑菜单的引入
* 22-禁用ViewPager左右滑动
* 23-BaseFragment布局的抽取
* 24-BaseFragment标题处理的抽取
* 25-BaseFragment内容的抽取
* 26-联网获取数据接口抽取
* 27-点击menu完成侧滑菜单的切换
* 28-不同的Tab页面控制侧滑菜单是否可以滑出
* 29-加载数据的入口
* 30-从服务器上获取新闻中心页的数据
* 31-把新闻中心的json转换成对应的模型对象
* 32-把数据传递给MainActivity的侧滑菜单
* 智慧北京-新闻中心页面/
* 01-RecyclerView的介绍和基本使用
* 02-RecyclerView不同风格的展现、条目点击事件
* 03-创建侧滑菜单的RecyclerView和MenuAdapter
* 04-侧滑菜单条目点击
* 05-点击侧滑菜单条目修改tab页面的标题
* 06-点击侧滑菜单项同时关闭侧滑菜单
* 07-加载新闻中心的内容页面
* 08-初始化新闻中心ViewPager
* 09-修改TabPagerIndicatorLibrary里面的样式
* 10-点击按钮切换到一下个页面
* 11-新闻中心页子tab页面的封装
* 12-新闻中心子tab页面数据加载
* 13-把新闻中心子tab加载的json数据转换成对应的模型
* 14-加载轮播图的图片
* 15-轮播图文字的改变
* 16-轮播图滑动点的切换
* 17-轮播图的自动切换和停止
* 18-手指按下停止轮播图的切换
* 19-轮播图的无限循环-在图片的前后多添加一张图片
* 20-轮播图无限循环-数据下标的修正
* 21-轮播图无限循环-向右不打开侧滑菜单
* 22-轮播图的点击事件
* 智慧北京-自定义上拉和下拉RecyclerView&组图/
* 01-新闻列表数据
* 02-RecyclerView分割线的颜色修改
* 03-RecyclerView上拉和下拉加载数据的架构
* 04-XWrapAdapter的getItemViewType方法的处理
* 05-根据XWrapAdapter的返回类型创建View和绑定View
* 06-在RecylerView中初始化头布局和脚布局并添加到RecylerView上
* 07-将轮播图添加到RefreshRecyclerView的头
* 08-创建头布局中的下拉刷新布局
* 09-给进度条设置红色的环形
* 10-默认隐藏RefreshRecyclerView的头和脚布局
* 11-处理dispatchTouchEvent方法拖滑出头布局
* 12-定义头布局的三种状态
* 13-头布局状态切换以及动画实现
* 14-手指弹起后处理头布局的状态
* 15-刷新加载最新的数据
* 16-处理轮播没有完全展示往下滑出时,轮播图出现回缩
* 17-快速拖动头的状态不切换bug修复
* 18-处理RecyclerView的滑动状态控制脚布局的显示和隐藏
* 19-处理RecyclerView显示脚
* 20-处理加载脚数据、隐藏脚
* 21-点击侧滑菜单切换新闻中心页的内容
* 22-加载组图布局、缓存布局
* 23-组图数据模型的转换
* 24-组图数据的显示
* 25-组图列表和网格类型的切换
* 26-给RecyclerView添加垂直的分割线
* 智慧北京-缓存性能优化&新闻详情页&三级缓存/
* 01-缓存工具类的编写
* 02-处理数据的缓存
* 03-切换Tab页面避免重新加载数据
* 04-点击新闻条目进入新闻详情页
* 05-修改Webview字体的大小
* 06-ShareSdk分享
* 07-点击的新闻条目变灰
* 08-在新闻中心子tab的切换会多出轮播图bug修复
* 09-拽下轮播图后轮播图停止切换的bug修复
* 10-三级缓存的概念
* 11-网络缓存加载图片
* 12-网络缓存加载图片-图片错位
* 13-磁盘缓存
* 14-内存缓存
* 15-软引用
* 16-LruCache的使用和原理
* 智慧北京-屏幕适配&极光推送&友盟统计/
* 17-为什么要屏幕适配
* 18-了解切图
* 19-图片适配
* 20-布局适配
* 21-权重适配
* 22-尺寸适配
* 23-代码适配
* 24-获取屏幕参数
* 25-dp转px的使用
* 26-JPush推送集成
* 27-JPush发送自定义通知
* 28-友盟统计
* 智慧北京-语音识别&二维码扫描/
* 01-科大讯飞-语音合成
* 02-科大讯飞-语言识别
* 03-科大讯飞-带对话框的语言识别
* 04-zxing二维码扫描
* 智慧北京-GridView框架&WebView&GridLayout/
* 05-可以移动的GridView
* 06-GridLayout的使用
* 07-DragEvent事件
* 08-GridLayout条目拖拽交换
* 09-自定义DragGridLayout
* 10-webview的基本设置
* 11-java和javaScript之间的互调
* 12-360新闻-从服务器获取分类数据
* 13-360新闻-新闻分类适配器
* 14-360新闻-新闻适配器
* 15-网页详情
* 16-给网页图片添加点击事件、图片双击放大
* 01-项目基本结构搭建
* 02-条目布局的分析和设计
* 智慧北京-列表视频播放/
* 03-MyVideoPlayer和MyVideoMediaController的初始化、列表界面实现
* 04-MediaHelper工具类的封装
* 05-点击播放按钮显示和隐藏控件、TextureView设置监听
* 06-点击播放按钮进行视频的播放
* 07-视频播放后对标题进行隐藏
* 08-点击视频播放界面显示和隐藏控制界面
* 09-视频控制界面显示和隐藏的动画
* 10-视频缓冲进度条的更新
* 11-更新播放时间和进度条
* 12-拖动SeekBar控制视频的播放
* 13-修改SeekBar的样式
* 14-自动隐藏视频控制布局
* 15-暂停和继续播放
* 16-播放完成、重播
* 17-点击其他条目的入口
* 18-点击其他的条目进行播放
* 19-滚动RecyclerView停止其他条目的播放
* 第四章 项目中级阶段/
* 电子市场-界面整体结构搭建/
* 001_项目展示
* 002_应用如何分层
* 003_创建包结构
* 004_Android databinding使用
* 005_导入常用工具类
* 006_界面结构分析
* 007_ToolBar使用
* 008_DrawerLayout使用
* 009_系统提供的Toolbar和列表联动解决方案
* 010_利用系统提供的Activity学习联动处理
* 011_依据AppBarLayout文档处理界面容器联动处理
* 012_TabLayout学习
* 013_测试界面联调
* 014_使用简单工厂创建Fragment
* 电子市场-界面流程化处理&首页数据加载/
* 015_流程化界面
* 016_界面加载中处理
* 017_错误界面处理
* 018_空界面处理
* 019_成功界面处理
* 020_快速完成应用界面流程处理
* 021_公共流程处理代码抽取
* 022_处理Fragment提前加载数据的问题
* 023_处理Fragment重复加载数据的问题
* 024_Fragment流程开启的判断
* 025_CommonPager编写
* 026_修复Handler创建问题
* 027_协议接口和OkHttp的优点介绍
* 028_OkHttp访问网络处理步骤
* 029_首页数据处理
* 030_首页数据处理中细节完善
* 031_首页数据显示(应用列表)
* 032_问题处理
* 032_使用DataBinding绑定首页条目数据
* 033_使用Glide处理图片加载
* 034_完成AppFragment的数据加载和展示
* 电子市场-首页功能实现/
* 035_抽取两个Fragment中公共代码
* 036_抽取两个Fragment中的Callback
* 037_协议三级缓存流程
* 038_从内存中获取数据
* 039_从本地缓存中获取数据
* 040_缓存HomeFragment数据
* 041_缓存数据通用流程处理
* 042_缓存网络数据到本地
* 043_轮播处理_多类型条目展示
* 044_轮播图片展示
* 045_添加获取下一页条目
* 046_分析加载更多数据流程
* 047_控制加载更多条目显示
* 048_抽取BaseHolder
* 049_获取和处理本地缓存数据
* 050_获取和处理网络数据
* 051_显示下一页数据
* 052_处理错误重试
* 053_简化首页代码
* 054_应用界面加载下一页功能处理
* 055_加载下一页流程代码抽取
* 056_showNextPagerData方法与onCreateViewHolder方法代码抽取
* 057_onBindViewHolder方法代码抽取
* 电子市场-游戏&专题界面功能实现/
* 058_游戏界面处理
* 059_专题界面处理
* 060_专题界面图片失真问题处理
* 061_专题界面CardView适配
* 电子市场-分类&推荐&排行界面功能实现/
* 062_分类界面数据处理
* 063_分类界面数据绑定
* 064_推荐界面数据处理
* 065_推荐界面数据展示
* 066_排行界面处理
* 067_Tablayout水平滚动
* 068_启动详情界面
* 069_详情界面AppBar折叠布局如何使用
* 070_详情界面通用流程引入
* 071_详情界面数据加载
* 072_详情界面Toobar数据设置
* 073_详情界面应用信息展示
* 074_详情界面安全信息展示
* 电子市场-详情界面功能实现/
* 074_详情界面截图信息展示
* 075_详情界面详细信息展示
* 076_详情界面展开动画处理
* 077_详情界面折叠动画处理
* 078_下载流程
* 079_应用信息展示
* 080_Sugar使用步骤
* 081_Sugar使用
* 082_加载数据库测试数据并展示到界面
* 083_判断应用是否安装过
* 电子市场-下载功能实现/
* 084_线程池管理
* 085_等待队列管理
* 086_完成下载任务
* 087_点击条目完成应用下载
* 088_缓存数据库中读取的数据到DownloadInfo中
* 089_下载过程中界面更新
* 090_自定义进度控件圆环绘制
* 091_进度绘制
* 092_进度控件文本绘制
* 093_点击事件处理
* 094_应用安装和卸载的监听
* 095_记录应用的信息到数据库中
* 第五章 项目高级阶段/
* Hi聊-技术准备&Splash界面&主界面&架构抽取&输入昵称界面/
* 01_项目功能的演示
* 02_项目模块、开源框架、架构的介绍
* 03_如何使用MVP的架构来编码
* 04_总结使用MVP的架构来编码的步骤
* 05_EventBus的使用
* 06_Glide图片网络框架的使用
* 07_项目架构、分包
* 11_主界面的布局架构、BottomNavigation和ButterKnife的导入
* 12_BottomNavigationBar的初始化
* 13_BadgeItem未读消息显示
* 14_创建5个Tab对应的Fragment、Fragment工厂
* 15_把附近Fragment添加到Container里面
* 16_点击底部的Tab对应显示内容进行切换
* 17_点击后退键把MainActivity放置到后台
* 18_BaseFragment头布局的编写和抽取
* 19_BaseFragment空布局的实现、设置标题和空图片抽象方法的编写
* 20_BaseActivity的创建
* 21_BaseActivity的行为的约束
* 22_输入昵称界面完成
* 23_输入昵称界面初始化、添加文字输入改变监听
* 24_返回弹出提示对话框
* 08_Splash界面
* 09_从Splash界面进入主界面
* 10_修改状态栏的颜色
* Hi聊-输入个人信息界面&注册界面&环信/
* 01_输入个人信息界面
* 02_输入个人信息界面控件初始化
* 03_打开系统相册获取一张图片
* 04_打开系统的图片裁剪、保存裁剪图片
* 05_日期选择对话框
* 06_家乡的选择
* 07_性别的选择
* 08_下一步按钮状态的改变
* 09_回退按钮事件处理
* 10_弹出性别确认提示对话框
* Hi聊-Bmob&注册流程&登录后逻辑&登录界面/
* 11_注册界面的布局、初始化
* 12_软件盘的监听
* 13_吐司工具类的使用
* 14_用户和密码的校验
* 15_点击注册显示注册加载界面
* 16_为什么采用环信、Bmob数据的存储
* 17_环信的介绍、sdk下载
* 18_环信SDK的集成
* 19_动态申请权限
* 20_Bmob云数据库SDK集成
* 21_User模型创建
* 22_把数据封装到User对象
* 23_处理BmobFile用户头像通过Intent传递数据丢失
* 01_注册界面的业务流程
* 02_上传头像到Bmob云数据库
* 03_保存用户的信息到Bmob云数据库
* 04_在环信的服务器上创建账户
* 05_登录到环信服务器、跳转到主界面
* 06_登录成功后发送事件通知让5个Fragment修改界面
* 07_登录成功后5个Fragment界面行为的分析
* 08_判断用户是否登录到了环信的服务器
* 09_根据用户登录的状态去显示标题的架构
* 10_附近Fragment的登录标题显示
* 11_直播Fragment登录后标题处理
* 12_会话Fragment登录后标题显示
* 13_通讯录、个人Fragment登录后标题的处理
* 14_登录成功后BaseFragment内容显示架构
* 15_登录界面的跳转和初始化
* 16_在TextView的下面创建下划线
* 17_登录界面登录按钮状态监听
* 18_登录界面用户名和密码的合法校验
* 19_登录界面显示加载的界面
* 20_登录到环信的服务器
* Hi聊-个人信息&退出&通讯录/
* 21_从Bmob云数据库获取个人信息,跳转到主界面
* 22_缓存当前登录的用户信息
* 01_显示个人Fragment的个人信息
* 02_点击退出弹出退出对话框
* 03_分析退出的业务流程
* 04_退出的业务操作
* 05_在注册界面缓存、在Splash界面查询用户的信息
* 06_完成通讯录fragmentBody布局的显示
* 07_点击Tab对标题进行切换
* Hi聊-好友搜索&添加&好友列表&删除&聊天/
* 08_搜索好友界面初始化
* 09-进入界面不弹出输入法、隐藏输入法
* 10-搜索好友
* 11-搜索好友列表数据绑定
* 12-发送添加好友请求
* 13-接收到好友请求的处理
* 14-修改添加好友的设置为自动添加
* 15-测试自动添加好友
* 09_点击好友进入聊天界面
* 10_消息的发送
* 11_消息的存储、加载和常见的API
* 12_获取会话消息
* 13_展示消息列表
* 01_消息间时间的处理、发送消息状态的监听
* 02_修复监听消息发送的Bug、加载更多的消息
* 03_接收到消息声音的提醒
* 01_在Splash界面和登录界面获取联系人列表
* 02_好友列表显示
* 03_处理标题的切换
* 04_添加好友后,刷新好友列表
* 05_添加的好友进行排序
* 06_RecyclerView条目点击效果的处理
* 07_好友列表的条目点击和长按事件处理
* 08_好友的删除
* Hi聊-聊天&会话列表&消息提醒&强制下线/
* 04_会话列表
* 05_接收到消息会话列表和聊天列表处理
* 06_未读消息数量的提醒
* 07_在后台接收到消息弹出通知
* 08_强制下线
* 外卖-MVP结构搭建/
* 008_Dagger2简介和引入
* 009_使用Dagger2的步骤
* 010_深入解析Dagger2原理
* 011_分析项目的整体结构
* 012_整合ButterKnifer
* 013_Retrofit简介和引入
* 014_使用Retrofit的步骤
* 015_参数替换原则
* 016_整合OrmLite_创建数据库和表
* 017_使用Ormlite进行关联关系查询
* 022_划分项目结构
* 023_创建包结构
* 024_抽取业务层联网代码
* 025_集成业务层数据库代码
* 026_分析项目效果
* 001_授课大纲
* 002_搭建GIT服务器
* 003_安装和使用客户端_关联服务器与本地库仓库
* 004_使用客户端_提交与更新代码
* 005_使用客户端_产生和解决冲突
* 006_从MVC到MVP
* 007_降低耦合度的方式方法
* 外卖-首页功能实现/
* 027_处理首页Tab
* 028_Selector自动生成工具
* 029_切换Fragment
* 030_分析HomeFragment布局
* 031_实现头部侵入到状态栏中
* 032_处理头部透明度渐变
* 033_分析首页RecyclerView显示
* 034_获取首页数据
* 035_隔离首页的业务处理
* 036_解析首页数据
* 037_展示首页商家列表
* 038_展示首页头条
* 039_抽取网络代码
* 外卖-商家界面功能实现/
* 040_打开商家界面
* 041_处理Toolbar
* 042_整合TabLayout与ViewPager
* 043_使用StickyListHeaders
* 044_分析联动功能
* 045_点击左侧容器修改分组列表
* 046_滚动分组列表刷新容器
* 047_处理左侧条目显示问题
* 048_替换模拟数据为服务器端数据
* 049_替换商品分类列表条目
* 050_替换商品列表条目
* 051_实现添加和减少商品动画
* 052_管理购物车
* 外卖-商家&购物车&账户中心功能实现/
* 053_实现商品添加到购物车动画
* 054_处理购物车气泡
* 055_展示购物车界面
* 056_处理购物车显示问题一
* 057_处理购物车显示问题二
* 058_登陆入口
* 059_常见用户登录处理方式
* 060_短信验证平台使用步骤
* 061_展示用户信息及分析登陆界面功能
* 062_获取验证码
* 063_校验验证码
* 064_完成登陆业务
* 065_持久化用户数据到数据库
* 066_事务管理
* 外卖-账户中心&结算中心&地址管理/
* 067_结算中心功能列表
* 068_处理数据展示
* 072_地址编辑界面功能列表
* 073_简化地址业务注入的操作
* 074_添加地址
* 075_界面问题修复
* 076_修改地址
* 077_删除地址
* 078_修复仅能增加一条地址记录的问题
* 079_显示结算中心地址
* 069_完整的地址功能
* 070_地址列表界面功能列表
* 071_加载地址列表
* 外卖-支付订单管理/
* 080_创建订单业务类
* 081_改造Dagger2代码
* 082_提交订单
* 083_获取订单的支付信息
* 084_展示订单支付界面数据
* 085_支付宝简介_下载sdk_运行demo
* 086_支付宝支付的流程
* 087_app集成支付模块
* 外卖-地图和订单管理/
* 088_高德地图介绍
* 089_查看Demo定位代码
* 090_处理定位
* 091_查看Demo周边搜索代码
* 092_实现周边搜索列表
* 093_添加新增地址中定位功能
* 094_保存新增地址坐标入库
* 095_自动匹配默认地址
* 096_处理界面适配问题
* 100_展示订单详情界面
* 101_管理订单状态
* 102_处理服务器推送的订单数据
* 103_利用观察者传递订单数据
* 104_更新订单列表数据
* 105_修改订单详情界面数据展示
* 097_处理订单界面功能
* 098_处理订单界面
* 099_展示订单列表
* 106_分析订单配送功能
* 107_推送订单详情界面更新数据
* 108_地图展示买卖双方
* 109_地图展示骑手位置
* 110_地图更新骑手位置
* 外卖-数据统计/
* 111_项目开发善后工作
* 112_友盟统计——常用功能
* 113_自定义事件
* 外卖-apk瘦身&多渠道打包&apk加固&增量更新/
* 114_代码混淆
* 115_删除无用资源
* 116_删除无用的语言文件
* 117_图片压缩
* 118_png图片转换成jpg图片
* 119_其他压缩方式
* 120_为什么进行多渠道打包
* 121_多渠道打包操作
* 122_apk加固
* 123_服务器升级包生成
* 124_手机端合成新版本APK
* 125_定义native方法
* 126_生成x86的so文件
* 127_利用so文件完成手机段APK合成工作
* 第六章 Android进阶阶段/
* VR基础和VR小项目/
* 01_VR介绍
* 02_VR全景图介绍
* 03_VR全景图代码实现
* 04_VR全景图功能处理细节
* 05_VR视频处理
* 06_VR视频的处理细节
* 07_VR小项目介绍
* 08_VR项目架构介绍
* 09_VR项目架构搭建
* 10_主界面两个Fragment的处理
* 11_VR全景图的列表显示
* 12_点击条目跳转详情界面
* 13_VR全景图详情的实现
* 14_VR视频的列表显示
* 15_显示全景图同时播放mp3音乐
* 16_VR视频详情界面处理
* 17_VR视频播放界面处理
* 百度地图/
* 01_百度地图简介
* 02_百度地图入门-申请KEY
* 03_百度地图入门-校验KEY
* 04_百度地图入门-缩放级别&&设置中心点
* 05_百度地图入门-三个核心类
* 06_百度地图入门-总结
* 07_地图图层
* 08_覆盖物-绘制圆
* 09_覆盖物-文字
* 10_Marker覆盖物
* 11_泡泡显示
* 12_矩形范围内搜索
* 13_周边搜索
* 14_城市内搜索&&详情搜索
* 15_驾车路线
* 16_驾车路线更改图标和添加途经点
* 17_步行路线
* 18_公交换乘
* 19_其他内容
* 20_定位介绍
* 21_定位
* 开源框架/
* 01_Logger使用
* 02_PicassoTransformation图片转换
* 03_NoHttp引入
* 04_NoHttp发送异步请求
* 05_NoHttp常用Api介绍
* 06_MpAndroidChart使用
* 12_模拟ButterKnife注解库
* 13_模拟ButterKnife的注解处理器需求
* 14_生成初始化控件类
* 15_生成初始化控件的代码
* 16_框架开发总结
* 17_热修复简介
* 18_配置project的build.gradle文件
* 19_配置module的build.gradle文件
* 20_DefaultApplicationLike子类编写
* 21_错误apk编写
* 22_完成修复
* 23_热修复原理分析1
* 24_热修复原理分析2
* 07_Android-Apt工作内容
* 08_处理流程
* 09_使用JavaPoet定义方法
* 10_使用JavaPoet定义类和生成文件
* 11_完成HelloWorld代码生成
* 源码分析/
* 01_课程介绍
* 02_操作系统介绍
* 03_虚拟机介绍
* 04_创建虚拟机
* 05_配置虚拟机
* 06_安装Ubuntu系统
* 07_安装虚拟机增强功能
* 08_源码下载相关工具
* 09_初始化源码下载环境
* 10_下载Android源码
* 11_配置JDK环境
* 12_编译源码
* 13_Handler的使用复习
* 14_Android系统的启动流程
* 15_SourceInsight介绍
* 16_Handler关联的Looper由来
* 17_loop方法里的死循环作用
* 18_获取和回收消息的机制
* 19_消息进入可执行队列的机制
* 20_消息处理时的分配机制
* 21_loop循环休眠时的唤醒机制
* 22_AsyncTask运行机制
* 23_拓展内容.FutureTask
* 24_使用子线程的消息循环
* 智能家居/
* 01_智能家居简介
* 02_智能监控介绍
* 03_智能监控流程
* 04_输入界面
* 05_显示界面控件初始化及输入内容的获取
* 06_连接及监控画面显示
* 07_断开连接
* 08_蓝牙灯泡简介
* 09_蓝牙灯泡基本流程
* 10_打开关闭蓝牙
* 11_扫描蓝牙设备之注册蓝牙广播接受者
* 12_连接蓝牙设备
* 13_开灯光灯点动
* 14_蓝牙灯泡细节处理




