Android大神班课程大纲
Android大神班
时长
四个月
课程内容
1 初识Android
1.1 了解安卓的历史,安卓手机的体系架构。
1.2 了解安卓的开发工具,模拟器(原生、genymotion、夜神、海马玩)等的安装、使用。
1.3 创建第一个安卓项目,了解安卓项目的详细结构
1.4 了解Android系统工具的使用(DDMS,ADB)
2 Android UI入门new (1).png
2.1 了解安卓的日志模式(Log)
2.2 了解安卓的尺寸单位(dp、dpi、sp)
2.3 认识View控件及其View控件的基础属性
2.4 认识ViewGroup控件及其相关属性
2.5 深入了解Android布局
2.5.1 LinearLayout的用法
2.5.2 RelativeLayout的用法
2.5.3 FrameLayout的用法
2.5.4 AbsoluteLayout的用法
2.5.5 TableLayout的用法
3 Android UI加强new (1).png
3.1 了解Android的系统控件
3.1.1 TextView的用法
3.1.2 EditText的使用
3.1.3 Button的使用
3.1.4 RadioButton的使用
3.1.5 CheckBox的使用
3.1.6 ProgessBar的使用
3.1.7 ImageView的使用
3.1.8 DatePicker的使用
3.1.9 TimePicer的使用
3.1.10 WebView的使用
3.2 动态添加控件
综合练习(布局复习)
美团外卖、大众点评
4 Android资源文件详解new (1).png
4.1 BitmapDrawable
4.2 ClipDrawable
4.3 StateListDrawable
4.4 TransitionDrawable
4.5 LayerListDrawable
4.6 LevelListDrawable
4.7 InsetDrawable
4.8 ShapeDrawable
4.9 Nine-PatchImage
5 Android 列表控件
5.1 ListView的使用
5.1.1 ListView的创建与使用
5.1.2 ListView的缓存问题
5.1.3 ListView的优化使用
5.1.4 ListView的属性与监听器
5.2 GridView
5.3 Spinner
6 Android 列表控件进阶
6.1 ListView的各种适配器(ArrayAdapter SimpleAdapter)
6.2 ExpandableListView
6.3 Android 弹窗
6.3.1 Dialog
6.3.2 PopupWindow
6.3.3 Notification
7 Android 数据存储
7.1 SharedPreferences的使用
7.2 文件存储
7.2.1 手机内部存储和外部存储
7.2.2 内部存储的划分
7.2.3 外部存储的位置
7.2.4 Linux文件权限
8 Android 数据库使用
8.1 数据库文件创建及版本更新
8.2 SQL语句执行
8.3 数据库的增删改查
8.4 SQLite3 使用 9 Android网络编程
9.1 HTTP协议回顾
9.2 HttpURLConnection、HttpClient的使用
9.3 XML数据解析
9.4 Handler的使用
10 Android网络编程加强new (1).png
10.1 开源框架 volley 的使用
10.2 Android 多线程编程
10.2.1 AsyncTask
10.2.2 HandlerThread
10.3 Handler的源码分析
综合练习(网络请求,ListView,SharePrefence)QQ
用户列表
11 四大组件——Activity
11.1 Activity的创建与启动
11.2 Activity数据交互
11.3 显示意图/隐式意图
11.4 startActivityForResult
12 四大组件——Activity 2
12.1 Activity生命周期
12.2 任务栈/启动模式
12.3 onSaveInstanceState
13 四大组件 - BroadcastReceiver
13.1 广播接收者入门
13.2 自定义广播(有序、无序)
13.3 静态与动态注册广播
14 四大组件 - Service
14.1 服务入门
14.2 启动/绑定服务
14.3 服务的生命周期
14.4 本地/远程服务
14.5 服务的常用实例(音乐播放器、侦探程序)
15 四大组件 - ContentProvider
15.1 ContentProvider入门
15.2 短信、联系人操作
15.3 内容观察者的使用
16 Android 图片处理
16.1 计算机图形学基础
16.2 Bitmap绘制
16.3 大图片处理
16.4 实现一个图片画板应用
17 Android 多媒体new (1).png
17.1 视频播放器
17.1.1 MediaPlayer SurfaceView
17.1.2 播放网络视频
17.1.3 播放本地视频
17.2 拍照
17.3 系统的图片库
18 Android动画new (1).png
18.1 帧动画
18.2 补间动画
18.3 属性动画
19 碎片——Fragmentnew (1).png
19.1 Fragment入门
19.2 FragmentTransision
19.3 回退栈
19.4 Fragment生命周期
19.5 Fragment的交互
19.6 Pad与手机的适配
19.7 Fragment切换
20 传感器、JSON入门
20.1 传感器的使用
20.1.1 光、方向
20.2 JSON数据
20.2.1 原生JSON数据解析
20.2.2 Gson使用
20.2.3 fastjson 使用
21 自定义控件
21.1 自定义控件的流程
21.2 onMeasure 方法
21.3 onLayout 方法
21.4 onDraw 方法
21.5 Android 的触摸事件传递机制
21.6 自定义控件与动画的结合
22 JNI 入门
22.1 JNI入门
22.2 C语言入门
22.2.1 C语言的数据类型
22.2.2 C语言的输出与输入函数
22.2.3 C语言的指针与数组
22.2.4 C语言的多级指针
22.2.5 内存管理
23 NDK入门
23.1 NDK工具简介
23.2 NDK的开发步骤
23.3 so库加载
23.4 NDK的小应用(加密器、图片处理器)
24 JNI进阶
24.1 C++ JNI开发
24.2 C++ NDK开发
25 第三方插件new (1).png
25.1 第三方接入库接入的一般方法
25.2 百度地图
25.2.1 手机定位的方式
25.2.2 百度地图的申请
25.2.3 百度地图的定位
25.2.4 百度地图增加标注
25.3 新浪微博
25.3.1 新浪微博接入申请
25.3.2 常见的加密方式
25.3.3 新浪微博的分享
25.3.4 新浪微博登陆
25.4 shareSDK
25.4.1 注册shareSDK
25.4.2 引入SDK
25.4.3 一键分享到各大平台
26 应用优化入门new (1).png
26.1 更优秀的列表控件——RecyclerView
26.1.1 RecyclerView的导入
26.1.2 RecyclerView加载数据
26.1.3 RecyclerView不同的展示效果
26.1.4 RecyclerView增加点击
26.1.5 RecyclerView动画效果
26.1.6 RecyclerView分割线
26.2 如何内存优化
26.3 Java的对象引用类型
26.3.1 强引用
26.3.2 软应用
26.3.3 虚引用
26.3.4 弱引用
26.4 MAT 内存分析
26.5 LeakCanary 分析工具
26.5.1 LeakCanary的使用
26.5.2 检测Fragment
26.5.3 检测某个特定对象
26.5.4 LeakCanary的原理简介
26.6 常见的内存泄露
26.6.1 内部类导致内存泄露
26.6.2 Context导致内存泄露
27 应用优化进阶new (1).png
27.1 内存优化的原理
27.1.1 减少内存使用
27.1.2 内存回收
27.1.3 内存重用
27.2 内存检查
27.2.1 查看UI布局过度绘制
27.2.2 查看UI布局的渲染速度
27.2.3 查看UI布局的层级
27.3 UI布局优化
27.3.1 如何避免过度绘制
27.3.2 减少布局层级
27.3.3 复用
27.3.4 使用include、merge、viewStub标签
27.4 BlockCanary的使用 28 Android新特性、蓝牙、WIFInew (1).png
28.1 Material Design 介绍
28.2 波纹触摸反馈
28.3 CardView的使用
28.4 TextInputLayout的使用
28.5 NestedScrollView的使用
28.6 FloatActionButton的使用
28.7 Toolbar
28.8 Snackbar
28.9 CoordinatorLayout
28.10 Palette
28.11 ActivityOptionsCompat过渡效果
28.12 transition系统 28.13 波纹动画
28.14 Android 蓝牙开发(蓝牙播放器、蓝牙聊天室)
28.15 Android WIFI开发
29 代码管理工具、项目管理new (1).png
29.1 SVN
29.2 GitLab
29.3 项目管理经验
29.3.1 需求文档的编写与分析
29.3.2 项目的时间的管理
29.3.3 项目的质量的管理
29.3.4 项目的风险的管理
29.3.5 项目管理的工具
30 HTML_CSS 入门new (1).png
30.1 HTML基础知识介绍
30.2 常见的HTML标签
30.3 HTML5新增的标签
30.4 CSS样式简介
30.5 CSS选择器
30.6 CSS选择器的优先级别
30.7 HTML标签的类型
30.8 CSS属性
30.9 盒子模型
30.10 HTML内容居中
31 CSS 加强new (1).png
31.1 CSS的布局
31.2 综合小练习01-百度首页
31.3 综合小练习02-登录界面
31.4 综合小练习03-宠物网
31.5 Bootstrap简介
31.6 综合小练习04-仿Mac OS界面
32 JavaScript入门与加强new (1).png
32.1 JS简介-基本数据类型
32.2 JS语法-对象语法
32.3 JS语法-内置对象window
32.4 JS语法-内置对象document
32.5 JS语法-DOM操作
32.6 Canvas画板
32.7 JS综合demo-选项卡切换
33 HTML5综合练习new (1).png
33.1 jQuery入门
33.2 瀑布流显示的实现
33.3 前端知识总结
33.4 响应式设计
34 React Native课程new (1).png
34.1 React Native开发介绍
34.1.1 配置React Native的开发环境
34.1.2 React Native的常用组件View
34.1.3 FlexBox布局之React Native篇
34.2 React Native组件生命周期
34.2.1 React Native常用组件之ScrollView
34.2.2 React Native请求网络数据
34.2.3 React Native常用组件之ListView
34.2.4 ListView综合小练习-1
34.2.5 ListView综合小练习-2
34.2.6 React Native常用组件之TabBar和TabBar.Item组件
34.2.7 React Native常用组件之Navigator
35 项目实战new (1).png
项目1 手机管家
项目2 网易新闻
项目3 安智市场
项目4 手机京东项目5 映客直播
项目6 投哪儿
项目7 小码哥超市(跨平台)

