Android 四大纲

《安全攻防与底层交互》
教学大纲

一、课程教学目标
(一)知识目标

目录
一、课程教学目标 2
(一)知识目标 2
(二)高度目标 2

  1. 与企业需求相结合:解决了企业的什么问题,有何好处? 2
  2. 我们在企业中开发android软件,解决企业提出的需求。了解公司人文, 文化,制度,从被接受->被认同->被尊重,在工作和实践中提高自己, 给企业创造更大价值。 2
  3. 与行业规范相结合:实现产品过程中,严格遵守开发流程,严格按照开发实现完成产品,不断 优化代码,完成从需求到设计到产品实现。 2
  4. 与行业(技术)发展相结合:随着Android技术的不断的成熟,从UI框架,联网框架,缓存机制,性能优化以及第三方与企业需求密切结合. 2
    (三) 速度目标((产出物是什么) 2
    (四)思路目标 4
    二、课程教学内容 5

第一单元:仿快手客户端MVP框架搭建 5

1.1 需求分析,框架说明 5
1.2 Iview,Imodel,Ipresenter,Iactivity,IFragment编写 5
1.3 Base类封装以及内存泄漏处理 5
1.4 BaseBean封装,ErroBean封装,冷启动优化 5

第二单元:网络框架自定义封装(上) 6

2.1 Oauth鉴权机制说明以及使用 6
2.2 RX全家桶框架封装 6
2.3 OkHttp自定义拦截器 6
2.4 自定义Gson工厂 6

第三单元:网络框架自定义封装(下) 6

3.1 下载框架封装 6
3.2 Glide缓存机制 6
3.3 Glide框架二次封装 6
3.4 Junit框架测试 7

第四单元:缓存框架封装 7

4.1SP缓存配置信息工具类封装 7
4.2 Sqlite数据库封装 7
4.3 GreenDao使用 7
4.4 项目缓存逻辑编写 7

第五单元:用户系统组件 8

5.1 Sign工具类封装 8
5.2 用户登录,注册逻辑编写 8
5.3 个人信息逻辑编写 8
5.4 组件间通信 8

第六单元:好友系统组件 9

6.1 关注模块编写 9
6.2 私信模块编写 9
6.3 消息模块编写 9
6.4 动态模块编写 9

第七单元:礼物系统组件 9

7.1礼物首页模块 9
7.2 礼物详情模块 9
7.3 组件间通信 9
7.4 礼物订单模块 9

第八单元:礼物充值组件 10

8.1 支付宝沙箱支付封装 10
8.2 虚拟快手币模块 10
8.3 充值模块 10
8.4 组件间通信 10

第九单元:短视频组件 10

9.1 点赞发评论模块编写 10
9.2 评论列表模块编写 11
9.3首页以及关注模块 11
9.4同城模块,视频详情页 11

第十单元:搜索组件 11

10.1 用户搜索模块 11
10.2 短视频搜索模块 11
10.3 附近搜索模块 11
10.4 推荐模块 11

第十一单元:NDK 基础知识 12

11.1 下载ndk,配置ndk 12
11.2 创建ndk 工程,gradle 配置 abifilter 12
11.3 java 调用c++ 传递参数返回数据 12
11.4 C++ 调用java方法 12

第十二单元:使用Ijkplayer 播放视频 12

12.1播放本地和网络视频 12
12.2小窗口播放 13
12.3使用jsy播放器 13
12.4 播放器组件封装与编写 13

第十三单元:mediaRecorder 13

13.1录音录制视频 13
13.2 surface view自定义摄像机 13
13.3 texture view 预览 13
13.4 短视频采集组件编写 13

第十四单元:Android arcore使用 14

14.1介绍arcore 14
14.2引入框架 14
14.3加载图片 加载3d 物体 14
14.4加载3d 物体 14

第十五单元:UI特效 14

15.1弹幕效果 14
15.2小窗口播放 14
15.3亮度调节 14
15.4广告 15

第十六单元:直播组件 15

16.1 腾讯SDK接入 15
16.2 礼物系统接入 15
16.3 发起直播 15
16.4 组件间通信 15

第十七单元:推送分享模块 16

17.1 Umeng推送模块封装 16
17.2 Umeng分享模块封装 16
17.3 Umeng统计模块封装 16
17.4 组件封装与通信 16

第十八单元:更新组件 16

18.1 后台更新 16
18.2 tinker热修复框架原理 16
18.3 tinker热修复框架接入使用 16
18.4 更新组件封装以及使用 16

第十九单元:打包混淆加固 17

19.1 v1,v2打包,打包过程 17
19.2 代码混淆 17
19.2.1 混淆原生封装代码 17
19.3 三方框架混淆 17
19.4 加固软件使用 17

第二十单元:项目完结 18

20.1 bug修复 18
20.2 bug检测 18
20.3 流程分析 18
20.4 直播上线 18

(二)高度目标

  1. 与企业需求相结合:解决了企业的什么问题,有何好处?
  2. 我们在企业中开发android软件,解决企业提出的需求。了解公司人文, 文化,制度,从被接受->被认同->被尊重,在工作和实践中提高自己, 给企业创造更大价值。
  3. 与行业规范相结合:实现产品过程中,严格遵守开发流程,严格按照开发实现完成产品,不断 优化代码,完成从需求到设计到产品实现。
  4. 与行业(技术)发展相结合:随着Android技术的不断的成熟,从UI框架,联网框架,缓存机制,性能优化以及第三方与企业需求密切结合.
    (三)速度目标((产出物是什么)

(四)思路目标
1. 通过对android产品开发的体系,提高学生对产品开发的思路、产品开发的目 标、产品的功能、产品的迭代创新等整个产品开发流程和实现的掌握.
2. 通过对Android控件的学习,针对不同页面布局,给出不同的排版方式.
3. 通过对Activity的学习, 深入了解Activity的启动方式和跳转,明白如何通 过Activity实现复杂数据的传递,实现多个页面的跳转.
4. 通过ScrollView的学习,深入了解如何实现一个页面, 超出一屏内容的显示.
5. 通过对Spinner的学习, 在不同展示效果中选择合适的适配器.
6. 通过WebView+js的学习,实现在当前的应用中,加载网络页面.
7. 通过对Json解析的学习,深入了解Json格式,给出不同Json格式的解析方式.
8. 通过对Http的学习,实现与服务器Get/Post请求,实现文件的上传和下载.
9. 通过对Handler,掌握线程之间传递消息的方法和作用.
10.通过ListVIew的学习,深入了解ListView的属性和作用,根据不同的接口地址, 加载数据,通过ListView的优化处理, 展示在ListView中, 掌握ListView多 布局显示的核心知识 .
11.通过GridView的学习, 深入了解GridView的属性和使用方式.
二、课程教学内容
(一)教学内容及考核要求

第一单元:仿快手客户端MVP框架搭建

1.1 需求分析,框架说明
1.1.1 项目分析
1.1.2 界面分析
1.2 Iview,Imodel,Ipresenter,Iactivity,IFragment编写
1.2.1 MVP接口的封装以及作用
1.3 Base类封装以及内存泄漏处理
1.3.1 MVP中Base类的封装;
1.3.2 MVP中针对网络请求内存泄漏处理
1.4 BaseBean封装,ErroBean封装,冷启动优化
1.4.1 实体基类封装
1.4.2 软件冷启动优化
知识目标:

  1. 了解Android语言特点、发展历史和现状。
  2. 掌握MVP的架构模式。
  3. 理解Android 项目的架构流程。
  4. 掌握Android 冷启动优化。
    能力目标:
  5. 会搭建及配置MVP环境。
  6. 会处理MVP中的内存泄漏
  7. 会使用Android 冷启动优化。
    速度目标:
    1.10分钟内通过画图工具, 绘制MVP架构。
    2.40分钟内编写搭建MVP架构。
    3.10分钟内实现Android冷启动优化。

第二单元:网络框架自定义封装(上)

2.1 Oauth鉴权机制说明以及使用
2.1.1 oauth 鉴权机制
2.1.2 oauth 鉴权作用
2.1.3 oauth鉴权使用
2.2 RX全家桶框架封装
2.2.1 rxjava+retrofit+okhttp+gson整合
2.2.2 网络请求框架封装
2.3 OkHttp自定义拦截器
2.3.1 添加日志拦截器
2.3.2 添加自定义拦截器
2.4 自定义Gson工厂
2.4.1自定义retrofit的GSON解析工厂
知识目标:
1.掌握oauth鉴权机制以及使用。
2.掌握rx全家桶整合。
3.掌握okhttp自定义拦截器。
4.掌握自定义gson解析工厂。
能力目标:
1.RX全家通整合与封装。
2.OkHttp拦截器
3.自定义GSON解析工厂。
速度目标:
1.10分钟内通过画图工具, 绘制rx全家桶请求过程。
2.40分钟内编写搭建rx全家桶请求。
3.10分钟内实现rx全家桶封装。

第三单元:网络框架自定义封装(下)

3.1 下载框架封装
3.1.1 rx全家桶下载更新封装
3.2 Glide缓存机制
3.2.1 Glide三级缓存原理
3.3 Glide框架二次封装
3.3.1 Glide框架基本使用封装
3.3.2 Glide框架圆角图片封装
3.4 Junit框架测试
3.4.1 Junit测试MVP中M层接口是否可以使用
知识目标:
1.掌握RX全家桶单例线程池封装使用。
2.掌握Glide基本封装。
3.掌握Glide圆角封装。
4.掌握junit单元测试。
能力目标:
1.会RX全家桶单例线程池封装。
2.会Glide基本封装
3.会junit单元测试。
速度目标:
1.40分钟内封装完成RX全家桶。
2.40分钟内编写Glide基本封装以及圆角图片。
3.10分钟内实现junit单元测试。

第四单元:缓存框架封装

4.1SP缓存配置信息工具类封装
4.1.1单例SP存储工具类封装
4.2 Sqlite数据库封装
4.2.2Sqlite工具类封装
4.3 GreenDao使用
4.3.1 GreenDao 增删改查操作
4.4 项目缓存逻辑编写
4.4.1 直播客户端数据库操作工具类编写
4.4.2 直播客户端数据库网络数据缓存工具类封装
知识目标:
1.掌握SP单例工具类封装。
2.掌握Sqlite封装。
3.掌握GreenDao使用。
4.掌握缓存业务逻辑。
能力目标:
1.会搭建SP单例工具类。
2.会Sqlite单例工具类
3. 掌握缓存业务逻辑。
速度目标:
1.20分钟内通过画图工具, 绘制缓存业务逻辑。
2.20分钟内编写搭建SP单例工具类。
3.20分钟内实现Sqlite单例工具类。

第五单元:用户系统组件

5.1 Sign工具类封装
5.1.1 rsa签名工具类封装
5.2 用户登录,注册逻辑编写
5.2.1 用户登录逻辑编写
5.2.2 用户注册逻辑编写
5.3 个人信息逻辑编写
5.3.1 个人信息展示页面
5.3.2 个人信息编辑页面
5.4 组件间通信
5.4.1 封装用户系统组件
知识目标:
1.掌握Sign的作用以及封装。
2.掌握登录注册逻辑以及编写。
3.掌握个人信息系统编写。
能力目标:
1.会Sign生成以及使用。
2.会登录注册逻辑以及编写
3.会个人信息系统编写。
速度目标:
1.10分钟内通过画图工具, 绘制Sign作用以及业务流程。
2.40分钟内编写Sign签名。
3.40分钟内实现登录注册个人系统。

第六单元:好友系统组件

6.1 关注模块编写
6.1.1 关注模块编写
6.2 私信模块编写
6.2.1 私信列表编写
6.2.2 发私信编写
6.3 消息模块编写
6.3.1 自定义快手通知样式
6.3.2 通知跳转视频详情页
6.4 动态模块编写
6.4.1 动态列表编写
6.4.2 图片详情编写
知识目标:
1.掌握关注私信消息动态业务流程。
2.掌握关注私信消息动态业务编写。
能力目标:
1.会关注私信消息动态业务流程。
2.会关注私信消息动态业务编写
速度目标:
4.10分钟内通过画图工具, 绘制关注私信消息动态业务流程。
5.40分钟内编写关注私信消息业务编写。
6.40分钟内实现动态业务编写。

第七单元:礼物系统组件

7.1礼物首页模块
7.1.1 礼物首页编写
7.2 礼物详情模块
7.2.1 礼物详情编写
7.3 组件间通信
7.3.1 礼物系统封装
7.4 礼物订单模块
7.4.1 生成礼物订单
知识目标:
1.掌握礼物系统业务逻辑。
2.掌握礼物以及礼物订单的编写。
能力目标:
1.会礼物系统业务逻辑。
2.会礼物以及礼物订单的编写
速度目标:
1.10分钟内通过画图工具, 绘制礼物系统业务架构。
2.60分钟内编写搭建礼物系统。

第八单元:礼物充值组件

8.1 支付宝沙箱支付封装
8.1.1 支付宝支付接入以及封装
8.2 虚拟快手币模块
8.2.1虚拟币模块分析
8.3 充值模块
8.3.1 充值模块封装
8.4 组件间通信
8.4.1 礼物充值组件封装
知识目标:
1.掌握支付宝支付封装以及使用。
2.掌握虚拟货币系统。
3.掌握充值系统。
能力目标:
1.会搭建虚拟货币系统。
2.会处理充值系统。
速度目标:
1.10分钟内通过画图工具, 绘制支付流程。
2.40分钟内编写虚拟货币系统。
3. 40分钟内编写充值系统。

第九单元:短视频组件

9.1 点赞发评论模块编写
9.1.1 点赞模块编写
9.1.2 评论模块编写
9.2 评论列表模块编写
9.2.1 评论列表模块
9.3首页以及关注模块
9.3.1 首页模块编写
9.3.2 关注模块编写
9.4同城模块,视频详情页
9.4.1 同城模块编写
9.4.2 视频详情页编写
知识目标:
1.掌握点赞评论模块业务逻辑。
2.掌握首页关注同城页面业务逻辑编写。
能力目标:
1.会搭建点赞评论模块。
2.会编写首页关注同城页面
3.会首页关注同城页面间切换。
速度目标:
1.10分钟内通过画图工具, 绘制点赞评论架构。
2.40分钟内编写首页关注同城页面。
3.40分钟内实现点赞评论。

第十单元:搜索组件

10.1 用户搜索模块
10.1.1 搜索组件业务分析
10.2 短视频搜索模块
10.2.1 短视频搜索编写
10.3 附近搜索模块
10.3.1 定位集成
10.3.2 同城列表编写
10.4 推荐模块
10.4.1 推荐模块编写
知识目标:
1.掌握搜索机制以及使用。
2.掌握搜索业务编写。
3.掌握同城模块编写。
4.掌握推荐模块编写。
能力目标:
1.会搜索业务编写。
2.会同城模块编写
3.会推荐模块编写。
速度目标:
1.40分钟内编写搜索业务。
2.40分钟内编写同城模块。
3.40分钟内实现推荐模块编写。

第十一单元:NDK 基础知识

11.1 下载ndk,配置ndk
11.1.1 NDK 环境搭建
11.2 创建ndk 工程,gradle 配置 abifilter
11.2.1 创建NDK工程以及配置
11.3 java 调用c++ 传递参数返回数据
11.3.1 java 向c++传递数据
11.4 C++ 调用java方法
11.4.1 c++调用java
知识目标:
1.掌握NDK环境搭建。
2.掌握java与c++通信。
能力目标:
1.会搭建NDK环境。
2.会处理java与c++通信
速度目标:
1.10分钟内通过画图工具, 绘制java与c++通信流程。
2.40分钟内编写java与c++通信。
3.40分钟内搭建NDK环境。

第十二单元:使用Ijkplayer 播放视频

12.1播放本地和网络视频
12.1.1播放本地视频
12.1.2 播放网络视频
12.2小窗口播放
12.2.1 小窗播放视频
12.3使用jsy播放器
12.3.1 jsy 播放器集成与使用
12.4 播放器组件封装与编写
12.4.1 封装播放器界面以及播放器控制器
知识目标:
1.掌握ijkplayer播放器使用。
2.掌握jsy播放器使用。
能力目标:
1.会搭建及配置ijkplayer播放器。
2.会使用jsy播放器。
速度目标:
1.40分钟内编写使用ijkplayer播放器。
2.40分钟内编写使用jsy播放器。

第十三单元:mediaRecorder

13.1录音录制视频
13.1.1 录制音频
13.1.2 录制视频
13.2 surface view自定义摄像机
13.2.1 自定义摄像机实现
13.3 texture view 预览
13.3.1 视频预览功能实现
13.4 短视频采集组件编写
13.4.1 短视频录制组件封装
知识目标:
1.掌握mediaRecorder生命周期。
2.掌握mediaRecorder录制音频。
3.掌握mediaRecorder录制视频。
4.掌握texture view预览视频。
能力目标:
1.会mediaRecorder录制音视频。
2.会texture view预览视频
速度目标:
1.10分钟内通过画图工具, 绘制mediaRecorder生命周期。
2.40分钟内编写mediaRecorder录制音视频。
3.10分钟内实现texture view预览视频。

第十四单元:Android arcore使用

14.1介绍arcore
14.2引入框架
14.2.1 arcore 框架搭建
14.3加载图片 加载3d 物体
14.3.1 arcore 加载图片
14.3.2 arcore 加载3d物体
14.4加载3d 物体
14.4.1 加载3d物体
知识目标:
1.掌握arcore框架搭建。
2.掌握arcore 加载图片。
3.掌握arcore 加载3d物体。
能力目标:
1.会搭建arcore框架。
2.会arcore 加载图片
3.会使用arcore 加载3d物体。
速度目标:

  1. 10分钟内搭建arcore框架。
    2.40分钟内编写arcore 加载图片。
  2. 40分钟内编写arcore 加载3d物体。

第十五单元:UI特效

15.1弹幕效果
15.2小窗口播放
15.3亮度调节
15.4广告
15.4.1片头广告
15.4.2中间广告
知识目标:
1.掌握弹幕特效。
2.掌握小窗口播放。
3.掌握片头广告,中间广告。
能力目标:
1.会弹幕特效。
2.会编写小窗口播放
3.会使用片头广告,中间广告。
速度目标:
1.10分钟内通过画图工具, 绘制弹幕特效原理。
2.40分钟内编写弹幕特效。
3.40分钟内实现片头广告,中间广告。

第十六单元:直播组件

16.1 腾讯SDK接入
16.1.1 腾讯视频SDK接入
16.2 礼物系统接入
16.2.1腾讯视频礼物系统接入
16.3 发起直播
16.3.1 使用腾讯SDK发起直播
16.4 组件间通信
16.4.1 直播组件封装与集成
知识目标:
1.掌握腾讯SDK接入。
2.掌握腾讯SDK直播功能。
能力目标:
1.会搭建及配置腾讯SDK接入。
2.会处理腾讯SDK直播功能
速度目标:
1.10分钟内通过画图工具, 绘制腾讯SDK接入。
2.40分钟内编写腾讯SDK直播功能。

第十七单元:推送分享模块

17.1 Umeng推送模块封装
17.1.1 推送模块封装
17.1.2 与6单元消息系统组合生成订制通知
17.2 Umeng分享模块封装
17.2.1 Umeng 分享模块封装
17.2.2 Umeng 分享自定义控件实现底部弹窗效果
17.3 Umeng统计模块封装
17.3.1 Umeng用户感兴趣视频分析与封装
17.4 组件封装与通信
17.4.1 Umeng组件化封装
知识目标:
1.掌握Umeng推送。
2.掌握Umeng分享。
3.掌握Umeng统计。
能力目标:
1.会Umeng推送。
2.会Umeng分享
3.会Umeng统计。
速度目标:
1.40分钟内编写Umeng推送。
2.40分钟内编写Umeng分享。
3.40分钟内实现Umeng统计。

第十八单元:更新组件

18.1 后台更新
18.1.1 使用封装的下载模块后台更新
18.2 tinker热修复框架原理
18.2.1 tinker热修复框架机制原理
18.3 tinker热修复框架接入使用
18.3.1 tinker热修复框架接入使用
18.4 更新组件封装以及使用
18.4.1 更新组件封装
知识目标:
1.掌握tinker机制以及使用。
2.掌握后台更新原理以及实现。
能力目标:
1.会搭建及配置tinker。
2.会处理后台更新
速度目标:
1.10分钟内通过画图工具, 绘制tinker原理。
2.40分钟内编写后台更新。

第十九单元:打包混淆加固

19.1 v1,v2打包,打包过程
19.1.1 v1 v2 打包的区别
19.1.2 打包
19.2 代码混淆
19.2.1 混淆原生封装代码
19.3 三方框架混淆
19.3.1 常用三方框架添加混淆例外
19.4 加固软件使用
19.4.1 360加固宝使用
知识目标:
1.掌握打包技术。
2.掌握原生以及三方混淆加固。
能力目标:
1.会软件打包技术。
2.会处理原生以及三方混淆加固
速度目标:
1.10分钟内通过画图工具, 绘制软件打包流程。
2.40分钟内编写处理原生以及三方混淆加固。
3.10分钟内实现软件打包技术。

第二十单元:项目完结

20.1 bug修复
20.2 bug检测
20.3 流程分析
20.4 直播上线
知识目标:
1.掌握上线流程。
能力目标:
1.会上线流程
速度目标:
1.10分钟内绘制上线流程。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值