《安全攻防与底层交互》教学大纲
第1单元 SVN以及SVN China,以及组件化 10
第2单元 arouter,calces的使用 11
第3单元 mvp架构,dagger2,butterknife的使用 12
第4单元 rxjava,rxandroid,retrofit的使用 12
第5单元 rxpermissions,rxlifecycle的使用 14
第6单元 补间动画以及帧动画使用 14
第7单元 属性动画以及差值器以及svg动画 15
第8单元 自定义view,自定义属性以及view绘制流程,touch事件分发 15
第9单元 抽屉菜单以及上下拉刷新framelayout实现 16
第10单元 matrix,photoview的基本使用 17
第11单元 pickerview,autolayout的基本使用 18
第12单元 eventbus以及design的使用 18
第13单元 zxing,leaks的使用 19
第14单元 支付宝,加密以及token的使用 20
第15单元 junit以及云测试平台使用的使用 21
第16单元 百度地图,七牛云平台使用 22
第17单元 原生环信SDK接入 23
第18单元 仿马蜂窝客户端用户模块编写 23
第19单元 仿马蜂窝商城模块编写以及支付流程实现 24
第20单元 仿马蜂窝项目完结 25
一、 课程教学目标
(一)知识目标(学什么知识)
1.SVN以及SVN China,以及组件化
2.掌握arouter,calces的使用
3.mvp架构,dagger2,butterknife的使用
4.rxjava,rxandroid,retrofit的使用
5.rxpermissions,rxlifecycle的使用
6.补间动画以及帧动画使用
7.属性动画以及差值器以及svg动画
8.自定义view,自定义属性以及view绘制流程,touch事件分发
9.抽屉菜单以及上下拉刷新framelayout实现
10.matrix,photoview的基本使用
11.pickerview,autolayout的基本使用
12.eventbus以及design的使用
13.zxing,leaks的使用
14.支付宝,加密以及token的使用
15.junit以及云测试平台使用的使用
16.百度地图,七牛云平台使用
17.原生环信SDK接入
18.仿马蜂窝客户端编写
(二)能力目标(学完知识后能做什么)
(三)速度目标(做到什么程度,又快又好)
整体考核目标:一周时间单独完成一个十个案例,其中包括:需求分析、表设计、流程图、代码实现。功能包括:欢迎页面、影评、美文、美图、我的、等模块
细化考核目标:
1. 一小时内完成UI布局。
2. 两小时内完成获取数据功能。
3.一小时内完成欢迎页面和首页框架搭建。
4.五小时内完成 “影评”功能。
5.三小时内完成 “美文”功能。
6.一小时内完成 “美图”功能。
7.三个小时内完成 “我的”功能
效果图如下:
二、 课程教学内容
(一)教学内容及考核要求
第1单元 SVN以及SVN China,以及组件化
【单元目标】
1.1 SVN介绍以及SVN China介绍
1.2 SVN插件安装,SVN China账号创建
1.3 SVN提交同步,冲突解决
1.4 SVN回滚,组件化配置
【考核标准】
理论目标:
第2单元 arouter,calces的使用
【单元目标】
2.1 Gradle文件配置说明介绍
2.1.1 compile,api,implementation的使用
2.1.2apply plugin: 'com.android.application’与apply plugin: 'com.android.library’的使用以及判断
2.2 Calces原理介绍以及组件化配置
2.2.1 Calces原理
2.2.2 Calces的配置
2.3 Arouter框架配置以及应用内跳转
2.3.1Arouter框架配置
2.3.2Arouter组件内跳转以及传参
2.3.3Arouter 控制反转
2.4 Arouter框架组件间跳转以及IProvider 使用
2.4.1Arouter组件间跳转
2.4.2Arouter组件间Fragment获取
2.4.3Arouter 组件间工具类调用
【考核标准】
理论目标:
第3单元 mvp架构,dagger2,butterknife的使用
【单元目标】
3.1 mvp架构模式原理
3.1.1 mvp架构图
3.1.2 mvp与mvc区别
3.2.3 企业级项目如何架构mvp
3.2 butterknife查找控件,设置监听使用
3.2.1 butterknife基本使用
3.2.2 butterknife在Fragment中使用
3.3 dagger2框架的基本使用
3.3.1dagger2基本配置以及使用
3.3.2 @Inject @Singleton @Module complete的使用
3.4 mvp框架中dagger2以及butterknife框架的使用
【考核标准】
理论目标:
第4单元 rxjava,rxandroid,retrofit的使用
【单元目标】
4.1 Retrofit框架的基本使用
4.1.1 Retrofit 基本配置以及使用
4.1.1 retrofit GET POST 请求以及上传下载
4.2 Retrofit框架封装配置
4.2.1 retrofit+okhttp+gson 封装以及使用
4.3 Rxjava基本使用与操作符
4.3.1 RxJava 配置以及使用
4.3.2 RxJava just flatmap merge等操作符使用
4.4 Rx全家桶的配置以及使用
4.4.1 retrofit+okhttp+gson+RxJava 封装以及使用
4.4.2 Okhttp拦截器,超时,baseUrl,封装设置
【考核标准】
理论目标:
技能目标:
第5单元 rxpermissions,rxlifecycle的使用
【单元目标】
5.1 6.0动态权限使用
5.1.1 6.0动态权限汇总说明
5.1.2 6.0 动态权限申请获取
5.2 rxpermission的使用
5.2.1 rxpermission配置以及使用
5.3 rxlifecycle的使用
5.3.1 rxlifecycle的基本配置
5.3.2 rxlifecycle关联声明周期方法
5.4 mvp中使用rxpermission与rxlifecycle
5.4.1 presenter中配置rxlifecycle关联activity
【考核标准】
理论目标:
1.用Xmind画出动态权限申请过程
2.Rxpermission 使用过程
3.Rxlifecycle使用过程
技能目标:
第9单元 抽屉菜单以及自定义上下拉刷新
【单元目标】
9.1 自定义抽屉菜单实现
9.2 自定义上下拉刷新framelayout实现
【考核标准】
理论目标:
第11单元 pickerview,autolayout的基本使用
【单元目标】
11.1 pickerview的使用
11.2 autolayout的使用
【考核标准】
理论目标:
第12单元 eventbus以及design的使用
【单元目标】
12.1 eventbus的基本使用
12.1.1 有序广播
12.1.2 粘滞广播
12.2 design的使用
12.2.1 FloatingActionButton 使用
12.2.2 NavigationView
12.2.3 CoordinatorLayout
12.2.4 CollapsingToolbarLayout
12.2.5 AppBarLayout
【考核标准】
理论目标:
1.利用Xmind说明eventbus的原理机制
2.说明design下常用控件以及效果以及使用情况
技能目标:
第13单元 ZXing Leaks使用
【单元目标】
13.1 Zxing的使用
13.2 Leaks的基本使用
【考核标准】
理论目标:
第14单元 支付宝,加密以及token的使用
【单元目标】
14.1 base64作用
14.2 rsa加密以及公钥私钥生成(非对称加密)
14.3 md5加密(数字证书)
14.4 sign的生成以及原理
14.5 token的生成以及原理
14.6 支付宝sdk接入,沙箱环境支付
【考核标准】
理论目标:
第15单元 Junit以及云测试平台使用的使用
【单元目标】
16.1 Junit测试用例编写:单元测试(逻辑、功能)
16.2 Monkey基本命令(压力测试)
16.3 Memory以及FindBus使用(内存、CPU使用)
16.4 百度云测试平台使用(兼容适配)
【考核标准】
理论目标:
1.利用Xmind描述monkey常用命令
2.用Xmind画出Junit测试用例
技能目标:
第17单元 环信SDK接入以及使用
【单元目标】
16.1 环信SDK开发注册
16.2 环信SDK接入
16.3 环信SDK登录退出聊天功能实现
16.4 企业级开发使用环信SDK流程图
【考核标准】
理论目标:
1. 利用Xmind 说明环信SDK通信流程
2. 利用Xmind 说明环信接入步骤
3. 利用Xmind 说明IM通信过程
技能目标:
第19单元 马蜂窝商城模块编写以及支付流程实现
【单元目标】
18.1 购物模块实现
18.2 支付宝以及微信接入
18.3 企业级商城购物流程图
【考核标准】
理论目标:
1.使用Xmind 绘制支付流程
技能目标: