Android教学大纲
一、Android学习进度规划:
第1周:【UI基础】
- 第1天: Android环境搭建
- 第2天: 常用UI布局及主要控件
- 第3天: 常用UI控件及事件处理
- 第4天: UI高级控件及Android资源
- 第5天: Activity生命周期
【知识点】
- Android环境搭建及工程目录介绍(前期使用Eclipse,版本:SDK21及以上版本,四周后逐渐接触Android Studio)
- 常用UI布局及主要控件
- LinearLayout、RelativeLayout常用属性【重点讲解】
- FrameLayout、GridLayout常用属性
- TextView、EditText、Button、ImageView、Toast的基本用法
- 表单三大UI控件及相应控件的事件处理及部分特殊drawable资源(selector、shape)
- RadioButton及RadioGroup的用法:【重点】单选、监听事件、利用selector实现选中与否、改变默认单选button的显示效果、修改topDrawable
- CheckBox的多选效果及监听。利用selector及shape修改多选框的显示效果
- Spinner、AutoCompleteTextView、ScrollView及适配器简介、数组资源
- Spinner的用法
- ArrayAdapter适配器的基本用法
- 数组资源String Array
- AutoCompleteTextView、ScrollView的基本用法
- ProgressBar、SeekBar、RatingBar的基本用法及美化
- Activity生命周期
第2周:
- 第6天: Activity管理及Intent七大属性
- 第7天: AsyncTask异步任务
- 第8天: ListView基本用法
- 第9天: ListView分页及优化
- 第10天: 图文混排+GridView
【知识点】
- Activity页面跳转、生命周期及Intent七大属性
- AsyncTask异步任务
- ListView基本用法及适配器
- ListView分页及优化 + item多种布局的ListView
- GridView图文混排
第3周:
- 第11天: Menu+Dialog+Toast
- 第12天: Fragment
- 第13天: SharedPreferences、SDCard及网络存储 + HttpURLConnection实现文件上传
- 第14天: SQLite数据库 + WebView
- 第15天: ContentProvider之ContentResolver
【知识点】
- Menu(选项菜单、上下文菜单、PopupWindow自定义菜单)+Dialog+Toast
- Fragment基本用法、生命周期、Fragment间传值
- SharedPreferences、内部文件存储及外部文件存储SDCard
- SQLite数据库 + WebView
- ContentProvider之ContentResolver
第4周:
- 第16天: 自定义ContentProvider
- 第17天: Loader异步装载
- 第18天: Handler与多线程
- 第19天: ActionBar + LruCache + Bitmap二次采样
- 第20天: ViewPager
【知识点】
- 自定义ContentProvider
- Loader异步装载器(CursorLoader及AsyncTaskLoader)
- Handler与多线程及源码分析
- ActionBar + 图片缓存(图片三层缓存策略、LruCache、Bitmap二次采样生成缩略图)
- ViewPager(制作欢迎引导页及加载网络图片的ViewPager及自动播放的ViewPager)
第5周:
- 第21天: TAB书签导航
- 第22天: BroadcastReceiver + Notification
- 第23天: Service1
- 第24天: Service2
- 第25天: 百度地图1
【知识点】
- TAB书签导航制作
- FragmentTabHost制作TAB书签导航
- Fragment + RadioGroup制作TAB书签导航
- Fragment + ViewPager + RadioGroup制作TAB书签导航
- Fragment + 带滑动导航条的ViewPager 制作TAB书签导航
- Fragment + ViewPager + HorizontalScrollView自定义滑动导航条
- Fragment + ActionBar制作TAB书签导航
- Fragment + ActionBar + ViewPager制作TAB书签导航
- BroadcastReceiver + 自定义广播 + Notification
- Service(一)(服务的概念及分类、被启动服务和被绑定服务实现音乐播放的用法)
- Service(二)(IntentService的用法及DownloadManager实现大文件下载)
- Service(三)(远程服务:AIDL及Messenger)
第6周:
- 第26天: 百度地图 2
- 第27天: 动画资源 + 样式、主题及drawable资源
- 第28天: 屏幕适配
- 第29天: 自定义View(上)
- 第30天: 自定义View(下)
【知识点】
- 百度地图基本用法
- 动画资源(帧动画、补间动画、属性动画基本用法)
- 屏幕适配及UI美化(样式、主题及特殊的drawable资源:selector、shape、level-list、layer-list等)
- 自定义View(继承于EditText、ListView)
- 自定义View(继承于View、继承于ViewGroup)
第8周:
- 第36天: Volley框架
- 第37天: UIL框架
- 第38天: xUtils框架
- 第39天:SlidingMenu及DrawerLayout + PullToRefresh等其他第三方技术
- 第40天: 事件分发及消费机制
【知识点】
- Volley框架
- UIL(Universal-Image-Loader)框架
- xUtils框架(ViewUtils \ HttpUtils \ BitmapUtils \ DBUtils)
- PullToRefresh(下拉刷新)+ 瀑布流及常用第三方菜单技术:SlidingMenu(侧滑菜单)、DrawerLayout (抽屉)、ResideMenu(驻留菜单)、SatelliteMenu(卫星菜单)
- 事件分发及消费机制 (TouchEvent)
第9周:
- 第41天:Gesture手势及 SurfaceView
- 第42天:播放器及摄像头
- 第43天: RecyclerView、CardView
- 第44天:传感器、WiFi及蓝牙通讯
- 第45天:ShareSDK一键分享及第三方登录 + 第三方支付 + JPush推送
【知识点】
- Gesture手势 + SurfaceView
- 播放器及摄像头(音乐播放、视频播放VideoView、摄像头)
- RecyclerView、CardView
- 传感器、水印、QRCode二维码
- WiFi及蓝牙通讯、ShareSDK一键分享及第三方登录 + Alipay第三方支付 + JPush推送
二、常用框架技术
- 网络访问框架
- okHttp框架、
- Retrofit(网络访问)
- AsyncHttpClient(【了解】)
- Volley框架 (StringRequest、JsonObjectRequest、JsonArrayRequest、ImageRequest、NetworkImageView)
- 反转注入框架
- ButterKnife、
- Android Annotations
- xUtils框架(ViewUtils \ HttpUtils \ BitmapUtils \ DBUtils)
- 图片异步加载框架
- Picasso、
- Fresco、
- Glide、
- UIL(Universal-Image-Loader)框架
- 数据库ORM
- ORMLite、
- GreenDao、
- ActiveAndroid
三、考核内容
必选:
- ListView、GridView、ScrollView、WebView
- assets及各种资源(selector、raw、string、color、dimens、style、array,必须采用软编码编程风格)
- 动画资源(帧动画、补间动画)
- 上下文菜单、PopupWindow、Dialog
- 数据存储:SharedPreferences、内部文件存储、SD卡存储、SQLite数据库操作
- ContentResolver
- CursorLoader异步装载
- Handler与多线程或AsyncTask
- 图片缓存
- 屏幕自适应、版本自适应
- 自定义View(至少三个)
- TAB导航(ViewPager、Fragment)
- 广播、服务、通知
- DrawerLayout、SlidingMenu或其他第三方菜单
- PullToRefresh
项目阶段必选:
- TouchEvent及手势
- Volley、xUtils、UIL框架或其他类似网络访问及异步加载图片的框架
- 瀑布流
- 混淆打包
可选:
- SurfaceView
- 音乐播放器或视频播放(自定义MediaController)
- 二维码扫描及生成
- RecyclerView、CardView
- 传感器
- ShareSDK一键分享及第三方登录
- JPush或其他推送技术
- Alipay或其他支付技术
- WiFi或蓝牙通讯
- 文件加密及解密
- 地图