主题 |
课程安排 |
移动应用开发概览 |
移动应用开发现状
移动应用开发的三种模式:
原生应用
网页应用
混合应用
iOS移动应用开发参考:
应用参考架构
开发语言
开发工具
应用发布与更新流程
Android移动应用开发参考:
应用参考架构
开发语言
开发工具
应用发布与更新流程 |
基于iOS
的应用开发 |
典型iOS应用参考架构 |
界面层框架
中间层服务
驱动层接口
iOS 应用的运行过程解析 |
Objective-C语言基础
|
Objective
-C概述
数据类型、运算符和表达式
控制语句
Objective -C语言的面向对象特性
继承性和多态性
分类与协议
内存管理
Foundation框架 |
Hello
iOS |
iOS概述
创建基于nib的HelloWorld工程
基于故事板的HelloWorld工程
应用生命周期
视图生命周期
设置产品属性
iOS API的介绍 |
MVC模式
|
MVC模式概述
Cocoa Touch中的MVC模式
MVC实例 |
UIView与控件
|
视图“始祖”——UIView
标签控件和按钮控件
TextField控件和TextView控件
开关控件、滑块控件和分段控件
网页控件WebView
等待相关的控件与进度条
警告框和操作表
工具栏和导航栏
iOS Auto Layout
iOS Text Kit
iOS 状态栏 |
表视图
|
表视图概述
简单表视图
分节表视图
修改单元格
表视图UI设计模式
分页模式
下拉刷新(Pull-to-Refresh)模式
iOS 下来刷新控件 |
视图控制器与导航模式
|
导航概述
平铺导航
标签导航
树形导航
组合使用导航模式 |
iPhone与iPad应用开发的差异
|
iPhone与iPad应用开发的差异需要思考的问题
iPad专用API
Master-Detail应用程序模板
Utility应用程序模板 |
移动平台的分层架构设计
|
低耦合企业级系统架构设计
移动平台的分层架构设计
“备忘录”应用实例介绍
基于同一工程的分层实现
基于一个工作空间不同工程的分层 |
数据持久化
|
数据持久化概述
属性列表
对象归档
SQLite数据库
Core Data |
数据交换格格式
|
数据交换
XML数据交换格式
JSON数据交换格式 |
iCloud编程
|
苹果云服务——iCloud
配置iCloud
iCloud数据存储
iCloud键值数据存储编程
iCloud文档存储编程
在iCloud下使用Core Data技术 |
使用Web
Service——基于客户端服务器结构网络通信
|
REST
Web Service
SOAP Web Service
ASIHTTPRequest框架
反馈网络信息改善用户体验 |
推送通知
|
苹果中的究竟有少个“通知”?
配置推送通知
iOS客户端编程
推送服务端编程 |
定位服务与地图应用开发
|
定位服务
使用iOS 苹果地图
使用程序外地图
使用本地化的百度地图 |
应用内购买
|
应用内购买实例设计
测试环境搭建
内置产品类型应用内购买
服务器产品类型应用内购买 |
基于Android的应用开发 |
Android开发环境搭建
|
JDK安装
Eclipse安装
ADT插件安装
Android SDK
环境测试 |
第一个Android
程序 |
Hello
Activity
文件目录结构
AndroidManifest.xml
Android应用程序
如何使用Android SDK
学会使用SDK中的samples
ADT插件使用 |
Android
UI基础 |
Android基本UI组件
Activity
View
ViewGroup
事件处理模型 |
UI基础控件和布局
|
常用UI控件
Menu
Dialog
Toast
UI布局(Layouts)
多个Activites之间的跳转 |
Android存储
|
Android数据存储方式
Shared Preferences
Files
Network
数据库-SQLite
Shared Preferences
Shared Preferences本质
Shared Preferences应用场景
查看Shared Preferences文件
Pull Shared Preferences文件
数据库-SQLite
SQL语句介绍
SQLiteOpenHelper |
Content
Provider |
Content Provider概述
Content URI
通过Content Provider访问联系人
自定义Content Provider |
服务
|
服务介绍
服务生命周期
调用Service
进程内Service
服务实例分析 |
广播接收器
|
广播接收器介绍
生命周期
广播接收器实例分析 |
通知
|
通知介绍
生命周期
实例分析 |
HTML5移动应用开发 |
HTML5
概述 |
HTML的发展史
HTML5的版本
WHATWG and W3C 规范
HTML5的新特性
HTML5能做什么
HTML5能做什么对HTML5和CSS3的支持
检测浏览器对HTML 5的支持 |
HTML5
标签语言 |
HTML5页面结构
HTML5 DOCTYPE
根元素
字符编码
HTML5新增的语义元素
其他新增的元素
验证HTML5页面及显示页面大纲
验证HTML5页面及显示页面大纲 |
HTML5表单
|
HTML
4的困惑
HTML 5新增的输入组件
HTML 5新增的输入属性
测试浏览器对HTML5表单元素的支持
HTML5的表单验证
(1) 定制验证错误消息
(2) 定制验证显示方式
(3) 取消验证 |
HTML5
音频和视频播放 |
video元素及其属性
视频编解码器
视频转换工具
各种浏览器支持些什么格式
旧浏览器的过渡解决方案
视频与脚本--简单的视频播放器
音频 |
采用HTML5
Canvas绘制图形 |
<canvas>元素
检查浏览器的支持情况
基本图形绘制
路径,变换,渐变
绘制文本
绘制图像 |
使用HTML5
通讯APIs
|
跨文档消息通信
源安全
检测浏览器对postMessage的支持
XMLHttpRequest Level2
XMLHttpRequest Level2新增事件
检测浏览器对XMLHttpRequest2的支持
跨域访问注意事项 |
HTML5
Web Sockets |
HTTP特点
如何实现实时(real-time)通讯
WebSocket特性
WebSocket与轮询方式的比较
Web Socket建立方法
WebSocket 的事件
WebSocket的属性
渐进增强和降级处理 |
HTML5
Web Workers |
Web
Workers介绍
Multi-core processor architecture
Web Worker communication
使用 Web Workers APIs
案例应用实践,练习指导 |
地理定位
|
地理定位介绍
在浏览器中使用地理定位
定位的技术背景
openstreetmap上显示当前位置
使用googlemaps追踪位置
案例应用实践,练习指导 |
HTML5存储
|
为什么需要本地存储
本地存储的限制
Web存储的两种类型
判断浏览器是否支持WebStorage
存取信息
storage事件
Web SQL
IndexedDB |
CSS3讲解
|
CSS3概述
半透明效果
CSS3属性选择器
边框样式
文本样式
背景色渐变
元素变形
效果过渡 |
jQuery
Mobile |
jQuery
Mobile设计的技术思考和商业思考
jQuery Mobile入门初体验
使用页眉、工具栏和标签栏
jQuery Mobile中的表单和按钮
jQuery Mobile中的列表
jQuery Mobile和CSS结合
jQuery Mobile主题
jQuery Mobile的API
和服务器集成
jQuery Mobile和HTML5开发框架PhoneGap结合 |
课程总结 |
移动应用开发相关技术框架回顾
各种开发技术关系定位
应用问题与解答
未来应用讨论 |