课程介绍:
课程内容包含Android基础、Android高级和多个Android实战项目,涵盖业界最新流行的 Android 开发技术,特别适合于大专院校计算机专业的学生,学习过各类视频教程的未就业人士以及在职程序员,学习后直达中高级Android开发工程师水平,本课程要求有一定JavaSE基础知识(买该课程送JavaSE基础课)。
课程目录:
第一章 Android基础阶段
1-1 web基础之html入门
html的简介之什么是html
html的简介之操作思想
字体标签和注释标签
列表标签
图形标签
超链接标签
表单标签(上)
表单标签(中)
表单标签(下)
其他标签
表格标签(上)
表格标签(下)
注册案例(上)
注册案例(下)
1-2 web基础之css入门
css的简介
css和html的结合方式
css的选择器(上)
css的选择器(中)
css的选择器(下)
1-3 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的函数的创建与使用(下)
1-4 web基础之JavaScript高级
js的事件的简介
js的常用事件(上)
js的常用事件(下)
dom简介(上)
dom简介(下)
document对象(上)
document对象(下)
innerHTML属性
练习-动态生成表格
表单的提交方式
表单的校验
json的简介
js解析json
json练习
1-5 web基础之mysql数据库入门
数据库的简介
mysql的安装和卸载
mysql的存储结构
sql的简介
使用sql对数据库的操作
使用sql对表进行操作
使用sql对表中的记录进行操作(上)
使用sql对表中的记录进行操作(中)
使用sql对表中记录进行操作(下)
使用order by对表中记录进行排序
聚集函数(上)
聚集函数(下)
分组操作
mysql可视化工具的使用
limit关键字
重置mysql的root密码
1-6 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注入
使用预编译对象实现查询和增加操作
使用预编译对象实现修改和删除操作
1-7 web基础之xml入门
xml的简介
xml的文档声明和元素定义
xml属性定义、注释和CDATA
xml解析简介和dom解析
sax解析xml
pull解析的简介
pull解析xml操作
pull序列化操作
1-8 web基础之tomcat入门
web相关概念的介绍
web服务器介绍
tomcat的安装和目录结构(上)
tomcat的安装和目录结构(中)
tomcat的安装和目录结构(下)
发布项目到tomcat(上)
发布项目到tomcat(下)
myeclipse整合tomcat
1-9 web基础之http协议入门
http协议简介
使用抓包工具查看http协议
1-10 web基础之servlet入门
servlet的入门
servlet的执行过程
servlet的生命周期
servlet开发的细节问题(上)
servlet开发的细节问题(下)
url-pattern的配置
开发中的路径问题(上)
开发中的路径问题(下)
重定向和转发
ServletConfig对象(上)
ServletConfig对象(下)
ServletContext对象(上)
ServletContext对象(下)
练习 统计网站访问次数
使用servletContext对象读取web项目中资源(一)
使用servletContext对象读取web项目中资源(二)
使用servletContext对象读取web项目中资源(三)
使用servletContext对象读取web项目中资源(四)
使用类加载器读取文件
默认servlet
1-11 web基础之Request和Response入门
response的简介
重定向的案例分析
重定向的案例代码实现
定时跳转的案例
定时跳转的案例倒计时
设置响应体
验证码实现步骤的分析
代码实现验证码
刷新验证码
文件下载案例
request获取请求数据和客户机信息
request获取表单提交数据(上)
request获取表单提交数据(下)
request获取表单提交中文数据
request域对象简介
重定向和转发的区别
转发案例分析
转发案例代码实现
response的流的注意事项
1-12 Android开发入门体验
通讯制式
Android的现状
Android的发展和平台数据
Android的体系结构
虚拟机的比较
art模式
android开发工具的获取
开发环境的目录结构
helloworld工程&部署到模拟器
adb常见指令
环境变量的配置
ddms简介
android工程的目录结构
电话拨号器
应用程序的权限
应用程序开发的流程
线性布局入门
线性布局综合案例
相对布局的使用
帧布局
表格布局和绝对布局
常见单位
小案例-qq大盗
点击事件的四种写法
1-13 Android开发测试和打印日志
测试相关的概念
Android下的junit测试
logcat使用
1-14 Android开发文件操作
qq登陆的ui界面
Android下的文件存储
方便api获取文件目录
sd卡操作
文件的权限
文件的权限-创建公有的文件
文件访问权限
sharedpreference保存数据
利用sp开发一个设置功能
1-15 Android开发xml操作
利用stringbuilder生成xml文件
Stringbuilder生成xml文件注意的问题
采用xml序列化器生成xml文件
xml文件的解析
采用调试的方式观察pull解析的流程
1-16 Sqlite数据库
Android下如何创建数据库
创建数据库的表结构
数据库的升级更新
数据库增删改查的sql语句
数据库的增删改查的实现
对增删改查的方法进行单元测试
采用命令行查看sqlite数据库的内容
1-17 使用ListView实现列表
学生管理系统界面的显示
listview引入
listview的使用
学生管理系统的升级
listview的优化的原理
listview的优化
采用打气筒创建view对象
通知数据适配器刷新数据
1-18 对话框
常见对话框
删除学生信息的对话框
数据库的另外一种增删改查的方法
数据库的事务
常见数据适配器-simple和arrayAdapter
1-19 动画效果
android下的图形动画
1-20 样式和主题
应用程序的国际化
样式和主题
1-21 联网操作
网络图片查看器
http请求的小细节
ANR产生的原因
主线程模型
android下的消息机制
网络图片查看器的完成
网页源码查看器
useragent的使用
中文乱码问题的处理
访问网络获取手机归属地
天气预报案例-json数据的解析
新闻客户端的需求和服务器搭建
连接服务器解析数据
数据的界面展现&正在加载的进度
新闻文本界面的展现
利用开源框架加载显示图片
smartimageview的原理
smartimageview异常的处理
1-22 Http请求
get方式提交数据-服务器搭建
采用get的方式提交数据到服务器
POST请求和GET请求的区别
POST方式提交数据到服务器
中文乱码问题的处理
中文乱码的补充-锟斤拷锟斤初体验
提交数据的中文问题
采用httpclient提交数据到服务器
采用开源框架get的方式提交数据到服务器
采用开源项目post数据到服务器
上传文件到服务器
为什么多线程可以提高下载速度
多线程下载的步骤
如何划分服务器的资源给不同的线程
多线程文件下载的实现
多线程断点下载的完成
多线程断点下载的小细节
多线程断点下载的移植
开源项目实现多线程断点下载
1-23 Activity入门
多界面应用程序的开发
人品计算器ui搭建
人品计算器的完成
Activity的数据传递
隐式意图和显式意图
显式意图和隐式意图的特点
隐式意图的详细参数
利用隐式意图打开系统的浏览器
利用隐式意图激活短信发送的应用
短信助手的ui
开启新的界面获取返回值
请求码和结果码
Activity的生命周期-创建和销毁
Activity生命周期-显示与隐藏
Activity生命周期-暂停和继续
Activity生命周期的总结
横竖屏切换的生命周期
Activity的任务栈
singletop的启动模式
singletask的启动模式
singleinstance启动模式
1-24 广播
sd卡状态监听
开机启动的广播接收者
外拨电话的广播接收者
软件的安装和卸载
短信窃听器
不同版本系统广播接收者的特点
自定义广播消息和广播接收者
自定义有序广播
有序广播的特点
系统的一些广播接收者的类型
只能用代码注册的广播事件
1-25 服务
需求_调用服务的方法
绑定服务调用服务方法的原理
服务内部代码的编写
绑定服务调用服务方法
绑定服务调用方法的回顾
通过接口隐藏代码内部实现的细节
绑定服务的生命周期
混合调用服务的生命周期
本地服务和远程服务
aidl的编写步骤
绑定远程服务的应用场景
支付宝安全支付案例
系统服务
利用系统服务监听通话的状态
通话录音
服务概念入门
服务简单入门
进程的优先级
为什么需要使用服务
服务的生命周期
简易音乐播放器
1-26 内容观察者
内容提供者的概念
内容提供者的工作方式
内容提供者的匹配规则
内容提供者的业务实现
学习内容提供者的目的
利用内容提供者添加删除用户的短信数据
小知识点-通知栏的提醒
装B神器
联系人数据库的表结构
利用内容提供者读取联系人
联系人内容提供者的工具类
删除联系人的细节
添加数据到联系人数据库
内容观察者
利用内容观察者观察短信数据库的变化
练习_利用内容提供者开发短信的备份和还原
1-27 多媒体
计算机图形的表示方法
加载图片到内存_x
加载大图片到内存
图片的缩放
图片的平移旋转镜面和倒影效果
随手涂鸦的ui
随手涂鸦的核心逻辑
随手涂鸦的细节
撕衣服
getX和getRawX区别
图片的颜色处理
音乐播放器的状态图
异步播放网络上的音乐文件
soundpool
视频播放器
SurfaceView子线程更新ui
surfaceview生命周期的回调
采用surfaceview播放视频
照相机拍照
视频的录制
1-28 传感器
传感器的使用
指南针
1-29 Fragment
fragment简介
fragment入门
fragment的事务
fragment与Activity的通讯
fragment的生命周期
fragment的向下兼容
1-30 属性动画
view动画
组合动画
xml文件定义动画
view动画的细节
属性动画
属性动画demo合集
xml定义属性动画
1-31 反编译
应用程序反编译
1-32 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调试
1-33 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主界面的实现
1-34 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_行为原理分析
第二章 项目初级阶段
2-1 安全卫士-项目分包&Splash界面
手机卫士学习目标
SVN版本控制
代码的组织方式
splash界面_UI布局实现
splash界面_版本更新业务分析
splash界面_获取网络版本信息
splash版本更新-版本比对不更新
splash版本更新-提醒用户更新
splah版本更新-下载apk的实现
splash版本更新-安装apk的实现
splash版本更新-网络错误的提示
2-2 安全卫士-Home界面&设置中心界面&手机防盗业务流程分析
Home页面_上部分布局的实现
Home页面_Logo动画的实现
Home页面_走马灯的实现
Home页面_设置按钮的shape和selector
9patch图片的制作和使用
Home页面_GridView的实现
设置中心布局的实现
组合式自定义控件和自定义属性
SettingItemView其他自定义属性的实现
设置中心自动更新的实现
手机防盗-业务流程分析
2-3 安全卫士-密码输入框&向导界面
手机防盗-密码输入框显示
手机防盗-密码设置框逻辑的实现
手机防盗-设置向导第一个布局的实现
手机防盗-设置向导其他布局的实现
手机防盗-向导界面动画的切换
手机防盗-向导界面的抽取
手机防盗-手势识别器的使用
手机防盗-手势识别首个页面bug的修复
手机防盗_sim卡绑定
手机防盗_设置安全号码
手机防盗_选择联系人页面的创建
手机防盗_系统联系人数据集获得
手机防盗_系统联系人图像获得
手机防盗_回显联系人号码
ListView的Adapter优化
手机防盗-密码输入框逻辑的实现
2-4 安全卫士-手机防盗&设置界面
手机防盗_设置完成界面的实现
手机防盗_防盗页面的布局的实现
手机防盗_防盗页面逻辑实现
手机防盗_开机重启判断手机丢失的逻辑
手机防盗_指令接收的逻辑实现
手机防盗_报警音乐的播放实现
手机防盗_手机定位原理介绍
手机防盗_GPS经纬度的获得
手机防盗_火星坐标的介绍
手机防盗_GPS位置追踪实现
手机防盗_设备管理员一键锁屏实现
手机防盗_一键锁屏激活操作
手机防盗一键锁屏卸载操作的实现
手机防盗_设备管理员向导界面实现
2-5 安全卫士-远程锁屏和擦除&骚扰拦截
手机防盗_远程锁屏和擦除数据
骚扰拦截_黑名单数据库建表
骚扰拦截_黑名单数据库Dao的创建
骚扰拦截_dao测试用例
骚扰拦截_功能分析
骚扰拦截_页面布局的实现
骚扰拦截_自定义编辑框状态选择器
骚扰拦截_黑名单列表显示
骚扰拦截_黑名单添加的实现
骚扰拦截_黑名单更新的实现
骚扰拦截_黑名单删除的实现
骚扰拦截_加载进度的实现
骚扰拦截_空View的显示
骚扰拦截_分页查询SQL的实现
骚扰拦截_下拉加载更多的实现
骚扰拦截_拦截服务状态的显示
骚扰拦截_短信拦截功能的实现
骚扰拦截_电话拦截状态时机的实现
骚扰拦截_电话拦截AIDL文件的获得
骚扰拦截_电话挂断的逻辑实现
骚扰拦截_通话记录删除的逻辑实现
2-6 安全卫士-号码归属地查询
常用工具_归属地UI实现
常用工具_归属地_ApiDemo源码使用
常用工具_手机归属地查询实现
常用工具_其他类型号码归属地查询实现
常用工具_号码动态查询
优化_GZip压缩的使用
2-7 安全卫士-常用号码&来电和去电归属地显示&自定义Toast
常用号码_ExpandableListView介绍
常用号码_ExpandableListView的Adapter实现
常用号码_真实数据查询的实现
常用号码_Expandablelistview的点击实现
拨入拨出_归属地服务的新建
拨入拨出_归属地信息获取的逻辑
Toast源码查看
自定义toast的实现
自定义toast拖动的实现
2-8 安全卫士-自定义Dialog
拨入拨出_归属地自定义dialog的新建
拨入拨出_dialog自定义样式的实现
拨入拨出_dialog_Adapter的实现
拨入拨出_点击的实现
2-9 安全卫士-软件管家应用列表&PopupWindow
软件管家_页面布局的实现
软件管家_progressStateView样式和方法的提供
软件管家_内部存储和sd存储信息的获得
软件管家_Adapter的实现
软件管家_应用程序数据的获得
软件管家_应用程序flags的含义和获取比对
软件管家_应用程序排序显示
软件管家_ListView条目头的添加
软件管家_PopupWindow的使用
软件管家_PopupWindow布局和动画实现
软件管家_应用卸载功能的实现
软件管家_应用打开和详情查询的实现
软件管家_shareSDK分享实现
软件管家_include标签的使用
2-10 安全卫士-进程管理&Widget
进程管理_页面布局实现
进程管理_进程数的统计
进程管理_内存数据的获取
进程管理_Adapter简单实现
进程管理_数据封装和假数据的展示
进程管理_真实数据的获取
进程管理_数据排序和ui微调
进程管理_自定义Toast实现字母显示
进程管理_条目全选反选的实现
进程管理_杀死进程的实现
进程管理_其他UI细节的实现
进程管理_锁屏自动清理内存的实现
进程管理_不被杀死的前台服务
Widget_窗口小部件显示实现的步骤
Widget_窗口小部件的生命周期
反编译工具的介绍
反编译_获得资源文件
Widget_小部件UI时时更新的实现
Widget_一键清理IntentService实现方案
Widget_时时更新UI的优化
异步任务_介绍
异步任务_AsyncTask的详细使用
异步任务_AsyncTask并发执行多任务
2-11 安全卫士-流量统计&短信备份还原&手势识别
流量统计_页面布UI实现
流量统计_假数据的显示
流量统计_流量数据的获得
短信备份还原_读取系统短信
短信备份还原_存储系统短信
短信备份还原_接口抽取实现备份
短信备份还原_短信还原的实现
手势识别_代码查询和获得
手势识别_Api使用和修改
手势识别_绘制监听
2-12 安全卫士-程序锁
程序锁_密码界面布局和分析
程序锁_Activity分流UI显示到Fragment
程序锁_密码设置fragment的创建
程序锁_密码向导跳转密码设置
程序锁_密码设置和密码确认布局跳转
程序锁_密码设置间动画的切换
程序锁_回退栈的监听
程序锁_密码设置业务逻辑的实现
程序锁_页面跳转的实现
程序锁_自定义分段控件布局实现
程序锁_分段控件接口声明实现
程序锁_程序锁页面Adpater的创建
程序锁_程序锁页面假数据显示和加载
程序锁_程序锁数据库创建
程序锁_程序锁加锁解锁的实现
程序锁_程序锁加锁解锁动画的实现
AccessibilityService的介绍和使用
程序锁_程序锁AccesibilityService添加
程序锁_拦截页面显示处理
程序锁_拦截页面逻辑跳转的实现
程序锁_其他细节实现
2-13 安全卫士-缓存清理
缓存清理_页面布局实现
缓存清理_Adapter的实现
缓存清理_ListView滚动扫描的实现
缓存清理_顶部扫描更新UI部分的切换实现
缓存清理_扫描线的动画和重新扫描的实现
Settings源码解析获得应用程序的缓存大小
缓存清理_缓存清理数据的获得和展示
缓存清理_清理功能的实现
缓存清理_bug的fix
2-14 安全卫士-手机杀毒&项目辅助知识点
手机杀毒_手机杀毒页面的创建
手机杀毒_获取真实数据的实现
手机杀毒_病毒数据判断实现
手机杀毒_自定义病毒程序校验
手机杀毒_顶部扫描逻辑的实现
手机杀毒_CircleProgress开源项目的使用
手机杀毒_扫描结束是打开动画的实现
手机杀毒_扫描左右图像的获得
手机杀毒_收尾
快捷图标的创建
自定义的Logger日志
上线应用程序异常的捕获原理&ACRA
ACRA的toast和dialog配置
Proguard代码混淆
AndResGurad资源混淆
2-15 自定义控件-自定义控件基础绘制和布局处理
01_自定义控件概述
02_自定义的继承关系和构造方法处理
03_利用canva绘制基本图形
04_利用path绘制机器耳朵(三条边的矩形)
05_利用path绘制人形耳朵(贝塞尔曲线)
06_canvas的平移,旋转和缩放
07_绘制文本
2-16 自定义控件-圆形菜单&饼状图点击
08_饼状图分析
09_饼状图的数据处理
10_扇形的外接矩形的处理
11_扇形的绘制处理
12_直线的绘制
13_文本的绘制
01_自定义ViewGroup的onLayout方法介绍
02_自定义ViewGroup稍复杂小demo
03_圆形菜单的准备工作
04_圆形菜单子视图的摆放
05_onMeasure的MeasureSpec参数讲解
06_圆形菜单的外部测量处理
07_圆形菜单的子视图测量处理
08_饼状图-将点击位置转化为索引值
09_饼状图-点击效果的处理
10_圆形菜单的旋转
2-17 自定义控件-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的文本和位置
2-18 自定义控件-下拉刷新效果
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_课外学习推荐
2-19 智慧北京-主界面架构&事件传递&主框架
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的使用
2-20 智慧北京-开发流程&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的侧滑菜单
2-21 智慧北京-新闻中心页面
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-轮播图的点击事件
2-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添加垂直的分割线
2-23 智慧北京-缓存性能优化&新闻详情页&三级缓存
01-缓存工具类的编写
02-处理数据的缓存
03-切换Tab页面避免重新加载数据
04-点击新闻条目进入新闻详情页
05-修改Webview字体的大小
06-ShareSdk分享
07-点击的新闻条目变灰
08-在新闻中心子tab的切换会多出轮播图bug修复
09-拽下轮播图后轮播图停止切换的bug修复
10-三级缓存的概念
11-网络缓存加载图片
12-网络缓存加载图片-图片错位
13-磁盘缓存
14-内存缓存
15-软引用
16-LruCache的使用和原理
2-24 智慧北京-屏幕适配&极光推送&友盟统计
17-为什么要屏幕适配
18-了解切图
19-图片适配
20-布局适配
21-权重适配
22-尺寸适配
23-代码适配
24-获取屏幕参数
25-dp转px的使用
26-JPush推送集成
27-JPush发送自定义通知
28-友盟统计
2-25 智慧北京-语音识别&二维码扫描
01-科大讯飞-语音合成
02-科大讯飞-语言识别
03-科大讯飞-带对话框的语言识别
04-zxing二维码扫描
2-26 智慧北京-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-条目布局的分析和设计
2-27 智慧北京-列表视频播放
03-MyVideoPlayer和MyVideoMediaController的初始化、列表界面实现
04-MediaHelper工具类的封装
05-点击播放按钮显示和隐藏控件、TextureView设置监听
06-点击播放按钮进行视频的播放
07-视频播放后对标题进行隐藏
08-点击视频播放界面显示和隐藏控制界面
09-视频控制界面显示和隐藏的动画
10-视频缓冲进度条的更新
11-更新播放时间和进度条
12-拖动SeekBar控制视频的播放
13-修改SeekBar的样式
14-自动隐藏视频控制布局
15-暂停和继续播放
16-播放完成、重播
17-点击其他条目的入口
18-点击其他的条目进行播放
19-滚动RecyclerView停止其他条目的播放
第三章 项目中级阶段
3-1 电子市场-界面整体结构搭建
001_项目展示
002_应用如何分层
003_创建包结构
004_Android databinding使用
005_导入常用工具类
006_界面结构分析
007_ToolBar使用
008_DrawerLayout使用
009_系统提供的Toolbar和列表联动解决方案
010_利用系统提供的Activity学习联动处理
011_依据AppBarLayout文档处理界面容器联动处理
012_TabLayout学习
013_测试界面联调
014_使用简单工厂创建Fragment
3-2 电子市场-界面流程化处理&首页数据加载
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的数据加载和展示
3-3 电子市场-首页功能实现
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方法代码抽取
3-4 电子市场-游戏&专题界面功能实现
058_游戏界面处理
059_专题界面处理
060_专题界面图片失真问题处理
061_专题界面CardView适配
3-5 电子市场-分类&推荐&排行界面功能实现
062_分类界面数据处理
063_分类界面数据绑定
064_推荐界面数据处理
065_推荐界面数据展示
066_排行界面处理
067_Tablayout水平滚动
068_启动详情界面
069_详情界面AppBar折叠布局如何使用
070_详情界面通用流程引入
071_详情界面数据加载
072_详情界面Toobar数据设置
073_详情界面应用信息展示
074_详情界面安全信息展示
3-6 电子市场-详情界面功能实现
074_详情界面截图信息展示
075_详情界面详细信息展示
076_详情界面展开动画处理
077_详情界面折叠动画处理
078_下载流程
079_应用信息展示
080_Sugar使用步骤
081_Sugar使用
082_加载数据库测试数据并展示到界面
083_判断应用是否安装过
3-7 电子市场-下载功能实现
084_线程池管理
085_等待队列管理
086_完成下载任务
087_点击条目完成应用下载
088_缓存数据库中读取的数据到DownloadInfo中
089_下载过程中界面更新
090_自定义进度控件圆环绘制
091_进度绘制
092_进度控件文本绘制
093_点击事件处理
094_应用安装和卸载的监听
095_记录应用的信息到数据库中
第四章 项目高级阶段
4-1 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_修改状态栏的颜色
4-2 Hi聊-输入个人信息界面&注册界面&环信
01_输入个人信息界面
02_输入个人信息界面控件初始化
03_打开系统相册获取一张图片
04_打开系统的图片裁剪、保存裁剪图片
05_日期选择对话框
06_家乡的选择
07_性别的选择
08_下一步按钮状态的改变
09_回退按钮事件处理
10_弹出性别确认提示对话框
4-3 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_登录到环信的服务器
4-4 Hi聊-个人信息&退出&通讯录
21_从Bmob云数据库获取个人信息,跳转到主界面
22_缓存当前登录的用户信息
01_显示个人Fragment的个人信息
02_点击退出弹出退出对话框
03_分析退出的业务流程
04_退出的业务操作
05_在注册界面缓存、在Splash界面查询用户的信息
06_完成通讯录fragmentBody布局的显示
07_点击Tab对标题进行切换
4-5 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_好友的删除
4-6 Hi聊-聊天&会话列表&消息提醒&强制下线
04_会话列表
05_接收到消息会话列表和聊天列表处理
06_未读消息数量的提醒
07_在后台接收到消息弹出通知
08_强制下线
4-7 外卖-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_降低耦合度的方式方法
4-8 外卖-首页功能实现
027_处理首页Tab
028_Selector自动生成工具
029_切换Fragment
030_分析HomeFragment布局
031_实现头部侵入到状态栏中
032_处理头部透明度渐变
033_分析首页RecyclerView显示
034_获取首页数据
035_隔离首页的业务处理
036_解析首页数据
037_展示首页商家列表
038_展示首页头条
039_抽取网络代码
4-9 外卖-商家界面功能实现
040_打开商家界面
041_处理Toolbar
042_整合TabLayout与ViewPager
043_使用StickyListHeaders
044_分析联动功能
045_点击左侧容器修改分组列表
046_滚动分组列表刷新容器
047_处理左侧条目显示问题
048_替换模拟数据为服务器端数据
049_替换商品分类列表条目
050_替换商品列表条目
051_实现添加和减少商品动画
052_管理购物车
4-10 外卖-商家&购物车&账户中心功能实现
053_实现商品添加到购物车动画
054_处理购物车气泡
055_展示购物车界面
056_处理购物车显示问题一
057_处理购物车显示问题二
058_登陆入口
059_常见用户登录处理方式
060_短信验证平台使用步骤
061_展示用户信息及分析登陆界面功能
062_获取验证码
063_校验验证码
064_完成登陆业务
065_持久化用户数据到数据库
066_事务管理
4-11 外卖-账户中心&结算中心&地址管理
067_结算中心功能列表
068_处理数据展示
072_地址编辑界面功能列表
073_简化地址业务注入的操作
074_添加地址
075_界面问题修复
076_修改地址
077_删除地址
078_修复仅能增加一条地址记录的问题
079_显示结算中心地址
069_完整的地址功能
070_地址列表界面功能列表
071_加载地址列表
4-12 外卖-支付订单管理
080_创建订单业务类
081_改造Dagger2代码
082_提交订单
083_获取订单的支付信息
084_展示订单支付界面数据
085_支付宝简介_下载sdk_运行demo
086_支付宝支付的流程
087_app集成支付模块
4-13 外卖-地图和订单管理
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_地图更新骑手位置
4-14 外卖-数据统计
111_项目开发善后工作
112_友盟统计——常用功能
113_自定义事件
4-15 外卖-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进阶阶段
5-1 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视频播放界面处理
5-2 百度地图
01_百度地图简介
02_百度地图入门-申请KEY
03_百度地图入门-校验KEY
04_百度地图入门-缩放级别&&设置中心点
05_百度地图入门-三个核心类
06_百度地图入门-总结
07_地图图层
08_覆盖物-绘制圆
09_覆盖物-文字
10_Marker覆盖物
11_泡泡显示
12_矩形范围内搜索
13_周边搜索
14_城市内搜索&&详情搜索
15_驾车路线
16_驾车路线更改图标和添加途经点
17_步行路线
18_公交换乘
19_其他内容
20_定位介绍
21_定位
5-3 开源框架
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代码生成
5-4 源码分析
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_使用子线程的消息循环
5-5 智能家居
01_智能家居简介
02_智能监控介绍
03_智能监控流程
04_输入界面
05_显示界面控件初始化及输入内容的获取
06_连接及监控画面显示
07_断开连接
08_蓝牙灯泡简介
09_蓝牙灯泡基本流程
10_打开关闭蓝牙
11_扫描蓝牙设备之注册蓝牙广播接受者
12_连接蓝牙设备
13_开灯光灯点动
14_蓝牙灯泡细节处理
页:
[1]