Android高级软件工程师
课时总数:360课时
课程介绍
一.课程大纲
1.第一阶段:Android应用编程(45个工作日)
课程目标:
A.掌握Android应用界面的开发。
B.掌握基于Android的应用开发如多媒体应用开发、地图导航的应用开发,音频及视频应用开发。
C.掌握手机商城开发。
D.了解语音识别及感应系统开发。
课程内容:
A.Android概述
简述Android的发展历程,分析Android的体系结构;Android开发环境搭建;介绍Android开发工具的安装,使用以及更新;两种虚拟机的比较,apk安装和卸载
B.Android基础及用户界面开发
Android架构分析、AndroidSDK、AndroidUI架构、Android四大组件。介绍Android原生控件,基本控件如Button、TextView、EditText、Toast、ImageView等等,以及这些基本控件的使用方法;介绍Android自带高级控件,如ListView、RecyclerView通知栏、各种对话提示框、总结点击事件的各种写法和监听,数据适配,数据更新。Android几大布局介绍(LinearLayout,RelativeLayout,TableLayout,FrameLayout等等),对比分析不同布局的使用场合,掌握每一种布局方式的编写;在基本布局的基础之上,深入讲解嵌套布局这一使用广泛的布局方式以及布局优化方式
C.核心组件-Activity
Activity生命周期及其函数调用,四种启动方式,以及任务栈的介绍;意图设计的原理,显示意图,隐式意图,意图数据传递,意图激活其他应用页面;请求码与结果码使用
D.数据存储
xml数据存储、Android文件系统、SDCard访问、SQLite核心编程、ContentProvider。阐述不同类型的存储空间,内部存储空间和外部存储空间;进一步分析内部存储空间和内存之间的关系,对比总结各自特点
E.多媒体技术
音频及视频播放、音频技术视频录制技术、Android语音识别技术、Android摄像头编程技术、多媒体资料管理
F.后台服务、电话服务、SMS
Service技术、消息广播、Notification管理;使用电话服务、电话状态监控、SMS服务、信息监控。Service技术,通过电话窃听器案例,掌握服务的一般使用方法,分析服务的生命周期,不同启动方式,服务内部方法的调用分析,接口编程;分析服务常见使用场景,通过多个案例掌握服务在这些场景的使用;aidl简介以及使用方法;消息广播,通过消息广播案例(短信监听器,SD卡状态监听,安装卸载等等),掌握系统类广播事件的监听、获取、处理;自定义广播事件,以及广播接收器,实现有序广播数据修改
G.Android传感器技术
手机传感器概述、Orientation传感器编程、accelerometer传感器编程、重力感应器
H.Android网络编程与互联网技术
无线网络概述、蓝牙通信及传输技术、网络连接及管理技术、Wi-Fi编程、Http通信、HttpClient应用。分析http协议,get请求,post请求,服务器响应,乱码现象,编码分析,通过多个客户端—服务端案例的实战,以及网络开源框架的分析,多线程的上传和下载等,帮助牢牢掌握Android平台下的网络编程
I.GPS编程/百度地图
LocationManager编程、ForwardGeocoding和ReverseGeocoding、GoogleMap服务概述、MapView、MapController、Overlay、导航技术;百度地图相关技术。注册百度开发者平台账号,下载相关SDK,Demo,查看开发指南,配置开发环境,获取安全码;地图图层分类介绍,基础底图,地形图图层,热力图图层,实时路况图图层,百度城市热力图,标注图层,弹出窗图层;覆盖物的分类介绍,覆盖物搜索;百度地图定位,坐标;通过此课程,重在学习如何使用第三方SDK
J.开源框架使用
Xutils,ViewPagerIndicator,pulltorefresh等开源框架使用
2.第二阶段:Android综合项目(15个工作日)
课程目标:
A.使大家入职企业很快能与企业接轨,开发得心应手。
B.能够熟练运用自定义控件技巧,完成界面交互的设计
C.熟悉各种开源框架,可短时间内完成高质量的项目设计。
课程内容:
1)新闻客户端
新闻客户端是为某大型门户网站定制的Android客户端。
a)项目特色
快速敏捷开发,综合使用了Xutils、SlidingMenu(恻拉菜单)、Jpush(极光推送)、sharesdk(社会分享)pullTorefush(下拉刷新)、Zxin(二维码生成)等开源项目。使大家入职企业很快能与企业接轨,开发得心应手。屏幕适配。解决市面上各种手机分辨率适配的问题。新闻详情WebView的使用,html模板和javascript的动态交互。项目的需求分析过程,根据需求构建项目的业务模型、程序设计文档等。
b)项目截图
a)项目特色
b)项目截图