该课程由猎学网审核,享受猎学网报名、支付保障
学习对象
本课程适合于计算机专业,有一定Java基础、通过入学考核的未就业人士。
提示:测试题主要考察您是否具备Java基础,以便我们统一入学基础,更好地开展教学工作。如果您感觉测试题很难,我们建议您参加我们的Android基础班学习。
培训周期
培训时间:4个月
培训方式:全日制脱产,每周5天上课, 上两天课休息一天的上课方式,早9:00-晚 20:30
学习费用
全价19980元,优惠价18980元!
学完此阶段可掌握的核心能力:
能够担任初级Android工程师需求,可根据产品经理需求完成程序编写,多种分辨率的屏幕适配。
学完此阶段可解决的现实问题:
能够根据项目需求,完成对应的模块设计与开发。
学完此阶段可拥有的市场价值:
学习完本阶段课程,根据吸收和掌握情况,可满足初级Android工程师需求,薪资范围在6000~8000元/月;
2.1 控件和布局
从Android平台下的基本控件等到高级控件,逐步讲解了Android下原生控件的特性和用法;在掌握基本控件的基础之上,学习讲解Android平台下用户界面的开发,主要涉及线性布局,相对布局,帧布局,绝对布局这几个方面。
2.1.1 初识Android
认识3G/4G,简述Android的发展历程,分析Android的体系结构;介绍Android开发工具的安装,使用以及更新;两种虚拟机的比较,apk安装和卸载。
2.1.2 原生控件介绍
介绍Android原生控件,基本控件如Button、TextView、EditText、Toast、ImageView、ImageButton等,以及这些基本控件的使用方法;介绍Android自带高级控件,如ListView、通知栏、各种对话提示框、总结点击事件的各种写法和监听,数据适配,数据更新。
2.1.3 布局介绍
介绍Android中的五大布局方式——线性,相对,表格,绝对,帧,对比分析不同布局的使用场合,掌握每一种布局方式的编写;在基本布局的基础之上,深入讲解嵌套布局这一使用更广泛的布局方式;通过电话拨号器,短信发送器两个综合型案例,进一步加强掌握xml布局文件的编写,以及显示单位的使用。
2.2数据存储
从内部存储和外部存储这两个方面着手,深入源码讲解Android系统存储空间的读写。同时,重点讲解了Android下不同方式的存储方式——文件,存储SD卡,数据共享SharedPreferences ,数据库SQLite。
2.2.1 初识存储空间
阐述不同类型的存储空间,内部存储空间和外部存储空间;进一步分析内部存储空间和内存之间的关系,对比总结各自特点;深入源码,分析当前系统存储空间读取代码的编写,帮助开发者对存储空间产生一个形象的概念。
2.2.2 文件存储
更基本的存储方式,纯Java方法,在指定的路径下创建一个File文件,然后通过数据流写入或者读取数据;指定路径时,对比使用不同的方式获取文件存储路径,从而引入更合适的方法;分析总结常见目录获取方法,指定路径下目录获取,缓存目录的获取;文件权限的介绍,如私有(MODE_PRIVATE),追加(MODE_APPEND),可读(MODE_WORLD_READABLE),可写(MODE_WORLD_WRITEABLE),在阐述Linux系统下文件权限的基础之上,扩展Android下文件不同类型;讲解用户和文件权限的关系。
2.2.3 SD卡存储
存储数据到SD卡,首先判断SD卡是否可用,SD卡的路径获取,SD卡的读写权限声明,指定SD卡路径下文件声明,更后通过流进行数据的存储;以案例驱动的模式,详细讲解每一步骤的实现。
2.2.4 sharedpreferences存储
Android自带的API,用来存储应用的配置信息。课程模拟手机设置操作,存储数据到sharedpreferences中,这一过程涉及sharedpreferences对象的获取,Editor编辑器,sharedpreferences对象的读取;xml文件的生成以及解析;通过查看pull解析xml文件的过程,引入断点调试的概念和使用;在对xml掌握的基础之上,对比理解sharedpreferences存储文件的实质。
2.2.5 数据库SQLite存储
Android内置轻量级数据库,在较大数据的存储,管理,维护时会使用到。创建数据库,引入数据库帮助类SQLiteOpenHelper,讲解onCreate()方法和onUpgrade()方法的作用;调用方法,生成数据库文件,查看数据库生成文件;SQL语句的基本使用;包装SQL语句,实现数据库的CRUD操作;引入Android自带API,实现数据库另一种方式的CRUD;使用SQLite Expert工具,查看数据库中的记录。数据库事件的定义,提交。
2.3 网络编程
分析http协议,get请求,post请求,服务器响应,乱码现象,编码分析,通过多个客户端—服务端案例的实战,以及网络开源框架的分析,多线程的上传和下载等,帮助牢牢掌握Android平台下的网络编程。
2.3.1 初识网络编程
使用具体案例QQ登录,模拟用户登录过程,分析该过程具体的实现步骤,帮助理解何网络编程;编写服务端代码,用来响应客户端请求;帮助学员建立手机客户端,网络编程,服务端这一客观的概念。
2.3.2网络请求方式
通过抓包工具抓取浏览器提交到服务器这一过程的数据包,分析数据包,阐述http网络请求的工作原理;根据原理,在Android中包装代码,实现get和post这两种不同方式的请求;对比分析总结这两种不同提交方式的优劣。
2.3.3网络请求乱码
根据数据请求乱码,URL乱码,分析乱码原因,提出解决办法;总结常见的乱码现象,提出乱码避免的一般方法。
2.3.4网络编程案例
通过源码查看器,网络图片查看器以及新闻客户端等案例,加强get请求和post请求的使用方法,分析Android下的消息机制;开源框架SmartImageView原理分析以及使用;google自带API OKhttp,实现另一种网络请求;多线程下载原理分析,逻辑实现,代码编写以及多线程断点的上传和下载,开源项目xutils多线程断点下载的扩展。
2.4核心组件
Android四大核心组件 (Activity、BroadcastReceiver、Service和ContentProvider)、Activity的生命周期,启动模式,service生命周期,开启方式,广播的发送和监听,ContentProvider数据变化监听、BroadcastReceiver接收指定广播。
2.4.1组件Activity
Activity生命周期,启动方式,以及任务栈的介绍;意图设计的原理,显示意图,隐式意图,意图数据传递,uri相关操作,意图激活其他应用页面;请求码,结果码,Activity横竖屏切换时生命周期函数的调用。
2.4.2组件Service
通过进程引入服务,对比两者的关系,总结服务的特点;通过电话窃听器案例,掌握服务的一般使用方法,分析服务的生命周期,不同启动方式,服务内部方法的调用分析,接口编程;分析服务常见使用场景,通过多个案例掌握服务在这些场景的使用;远程服务的应用场景,aidl简介,以及使用方法;
2.4.3 组件BroadcastReceiver
作为Intent广播的“消费者“,课程首先讲解了该类存在的意义,然后分析该类的设计原理;通过ip拨号器,短信监听器,SD卡状态监听,系统开机监听,安装卸载监听多个案例,掌握系统类广播事件的监听,获取,处理;自定义广播事件,以及广播接收器,实现有序广播数据修改。
2.4.4 组件ContentProvider
Android系统下的另一种数据存储访问方式,通过内容提供者向外提供私有数据的交互接口,从而可以实现两个不同应用之间数据的共享。课程首先引入为什么需要使用内容提供者,然后分析该实现原理,更后通过多个案例(私有数据库数据访问案例,短信备份案例,短信还原案例,联系人数据添加案例等)实现一个应用对另一个应用私有数据的访问。
2.5多媒体动画
录像、录音、照相、涂鸦、图片处理,动画效果等功能。
2.5.1图形图像的处理
课程首先介绍图形在计算机的表示原理,介绍常见的图形(图像)相关技术指标,像素,分辨率,彩色数,图形灰度,保存格式;加载大图片时,处理OOM异常,加载压缩后图片,图片副本创建;图片旋转,平移,缩放,镜面基本处理;通过案例美图秀秀,画画板等详细讲解了实际开发中图片的处理。
2.5.2音频视频的处理
介绍音乐播放器常用API,通过案例百度音乐盒实现本地或网络音乐的播放;影音播放常见API介绍,分析类MediaPlayer详解音影播放的时序;直接使用videoView实现视频播放;介绍surfaceView特点和使用方法,编写代码实现surfaceView对视频的播放;调用系统自定义API,实现拍照,录像等功能。
2.5.3动画
从帧动画和补间动画这两个方向,分别讲解其含义以及具体的实现,同时还介绍了xml这一定义动画的方式。
2.6传感器等
方向、加速度(重力)、光线、磁场、距离(临近性)、温度等传感器的使用;主题,样式,国际化,屏幕适配,消息通知栏;
2.7C语言及NDK开发
JNI课程涉及C语言的基本语法,JNI规范和NDK的使用,通过NDK编译生成动态库,实现了Java代码和C代码的相互调用。
2.7.1 C语言
课程首先介绍JNI的基本概念,阐述JNI的使用场景以及C语言学习的必要;搭建C环境,介绍了C语言的基本使用,主要从数据类型,基本函数,指针,数组,结构体,联合体,枚举,自定义类型这几个方面开展对C的学习。
2.7.2 NDK开发
介绍何为NDK,引入NDK工具包并介绍其目录结构;分析总结Java调用C程序的基本步骤,并按照步骤进行代码实现;提出JNI开发中常见错误,详细讲解Javah使用,集成开发环境使用;通过多个案例掌握Java对c的调用;对现有so库的调用,支付宝案例分析使用,JNI乱码问题;通过案例讲解Java和C的互调。
2.8项目版本控制
版本控制的作用及组成, 使用svn进行代码的提交、更新、合并等操作,代码冲突的原因及解决方案,版本库的备份和还原,提交代码的原则,多人协同开发管理Android项目,代码版本的分支和合并操作,使用svn获取开源代码。
学完此阶段可掌握的核心能力:
能够担任初级Android工程师需求,可根据产品经理需求完成程序编写,多种分辨率的屏幕适配。
学完此阶段可解决的现实问题:
能够根据项目需求,完成对应的模块设计与开发。
学完此阶段可拥有的市场价值:
学习完本阶段课程,根据吸收和掌握情况,可满足初/中级Android工程师需求,薪资范围在8000~11000元/月。
3.1综合性项目《手机安全卫士》
该项目采用MVC框架,糅合了Android基础的大多数知识点如activity,service,broadcast,content provider,Notification ,数据库,自定义title,自定义控件,自定义toast,widget,aidl进程间通讯, C代码和java的互相调用等,重在加强夯实Android基础。
项目特色
介绍了listview和gridview等控件的优化技巧,提升软件的效率
穿插介绍了企业开发中的b
顾问将于24小时内联系您!