手机应用程序设计
Mobile Application Design
课程编号: | 109304 | 学分: | 2 |
开课单位: | 电子信息工程学院 | 总学时: | 48 |
课程类别: | 专业选修课 | 课程性质: | 任选 |
一、课程的性质和目的
课程性质:本课程是电子信息工程、电子科学与技术、通信工程、计算机、软件工程等专业的一门综合应用课程,C语言程序设计、Java程序设计是本课程的先修课程。
目的:本课程以Android这一主流移动平台操作系统为切入点,并以案例教学为主。通过本课程的教学,使学生掌握Android应用开发的基本流程和基本方法,理解基于Android操作系统的应用程序开发全过程。通过上机实践练习,培养学生的编程能力,启发学生的创新意识,提高学生在手机软件开发方面分析问题和解决问题的实际动手能力,使学生的理论知识和实践技能得到共同发展。
二、课程教学内容及基本要求
(一)课程教学内容及知识模块顺序
1.知识单元一: Android基础知识(2学时)
(1)知识点一:Android概述
(2)知识点二:Android的特点
(3)知识点三:Android环境的搭建
(4)知识点四:一个简单的Android程序
教学基本要求:
了解Android开发的基本概念、Android的特点,重点掌握Android环境的搭建以及程序开发的基本流程,提高学生对Android开发的认知度。
2.知识单元二: Android项目结构分析(4学时)
(1)知识点一:Android的系统架构
(2)知识点二:应用程序的基本组件
(3)知识点三:应用程序生命周期
(4)知识点四:资源
(5)知识点五:Android Manifest.xml 的组织结构
教学基本要求:
重点理解Android的系统架构。了解应用程序的基本组件,掌握Android组件的基本属性和用法。了解应用程序的生命周期,特别是Activity的生命周期。掌握资源的创建、管理和使用,了解Android Manifest.xml文件的组织结构。
3.知识单元三: 设计用户界面(4学时)
(1)知识点一:用户界面基础
(2)知识点二:界面控件
(3)知识点三:界面布局
(4)知识点四:菜单
(5)知识点五:界面事件
教学基本要求:
理解Android用户界面的基础知识,了解控件、布局、事件的基本概念,重点掌握Android基本界面控件、界面布局、菜单、界面事件的属性和使用方法。掌握在界面设计时进行布局编程、菜单编程,设计控件时控件的事件响应处理编程。难点是掌握界面布局控件的使用方法、菜单的使用方法、按键事件和触摸事件的处理。
4. 知识单元四: 2D图形绘制与多媒体(2学时)
(1)知识点一:Android图形基础
(2)知识点二:动画实现
(3)知识点三:音频播放
(4)知识点四:视频播放
教学基本要求:
了解Android图形、视频播放的基本概念。掌握基本的图形制作流程,以及动画、音频、视频的实现。
5. 知识单元五: 定位服务与地图应用(2学时)
(1)知识点一:使用GPS获取位置
(2)知识点二:Google地图应用
教学基本要求:
理解移动定位服务的相关知识,掌握Android. Location和Google Maps等类库的使用方法,了解申请地图秘钥的方法。提高学生利用GPS和Google地图实现定位服务的设计能力。
6.知识单元六: 网络编程(2学时)
(1)知识点一:基于Socket套接字的通信
(2)知识点二:基于HTTP协议的网络编程
(3)知识点三:使用WebView进行网络开发
教学基本要求:
理解移动网络通信的相关概念,掌握基本网络通信、网络编程的原则和方法,通过使用WebView提高学生网络开发的能力。
(二)课程的重点、难点及解决办法
重点:Android环境的搭建,Android系统架构,各种用户界面控件的使用方法,Android图形基础,Android .Location类库中LocationManager及相关类,Socket套接字通信。
难点:Android程序开发的步骤,应用程序基本组件和生命周期,界面布局控件的使用方法、菜单的使用方法、按键事件和触摸事件的处理,动画、音频、视频的实现,Google Maps类库的使用方法,获取网络资源,使用webView进行网络开发。
解决办法:加强理论教学,在教学中应注意重点和难点内容。由于本课程具有很强的实践性,在理论教学的同时应加强学生Android编程能力的培养,辅助大量的编程练习,激发学生的思维能力和创造能力。
三、实验实践环节及基本要求
1.实验实践教学环节在本课程中的作用及要求
本课程具有很强的实践性,上机实践环节对于整个课程的学习至关重要。学生通过上机实践才能更好地巩固理论知识,使理论与实际相结合,从而提高程序设计能力和计算机操作能力。
本课程的实践环节是针对理论部分Android基础知识设计的案例实践,进一步巩固了理论知识,使学生掌握Android软件开发的基本流程和基本方法,能够利用Android应用开发技术完成简单的项目设计与开发。
2.实验项目
(1)实验一:熟悉Android环境(2学时)
内容:搭建Android开发环境平台。
要求:了解Android SDK的安装、配置、使用。熟悉ADT组件, 开发工具eclipse的使用。熟悉Android程序的基本框架。
(2)实验二:Activity组件的生命周期(2学时)
内容:熟悉Activity组件的生命周期变化。创建一个Android工程,为活动起名为First,建好后在First.java中根据书中代码添加代表Activity生命周期的五个方法:onDestroy(),onPause(),onResume(),onStart(),onStop()。在调试窗口观察Activity组件的生命周期的调用情况。在前面的程序基础上增加一个按钮,使得按下按钮系统调用finish()方法来结束Activity。练习操作Activity的窗口。
要求:了解Activity组件的生命周期、运行状态、状态维护。掌握Activity组件的窗口。
(3)实验三:界面布局的创建及熟悉布局类(2学时)
内容:熟悉声明界面布局的方法。练习LinearLayout布局、TableLayout布局、RelativeLayout布局和FrameLayout布局。
要求:掌握用户界面结构,界面布局的方法。掌握LinearLayout类、TableLayout类、RelativeLayout类、FrameLayout类的使用。
(4)实验四:资源管理(2学时)
内容:练习Android工程中的资源映射、资源命名、资源访问和资源国际化。
要求:了解资源存储、资源映射、资源命名、资源访问和资源国际化。
(5)实验五:Intent的调用(2学时)
内容:熟悉Intent Filter的功能,了解Intent解析机制,显式及隐式调用Intent,实现通过Intent在活动之间传递数据。
要求:了解Intent的组成,Intent Filter的功能,Intent解析机制。掌握Intent的调用方法。掌握Intent传递数据的方法。
(6)实验六:实现Activity之间的协同(2学时)
内容:练习传递对象,Activity之间的协同。练习Intent与ShortCut,实现为界面上的组件创建快捷方式。
要求:了解在Intent中传递复杂对象的方法。了解Intent与ShortCut。掌握实现Activity之间的协同。
(7)实验七:创建Service/IntentService(2学时)
内容:练习创建启动模式下运行的Service组件。练习多请求下的线程同步。练习创建启动模式下运行的Service组件。练习绑定模式下的Service创建。练习远程绑定模式下的Service创建。练习传递复杂对象。
要求:了解Service的常用方法,创建和使用Service的方法。掌握Service的生命周期。了解绑定模式下的Service。掌握创建和使用IntentService。
(8)实验八:内置Content Provider(2学时)
内容:模拟访问手机通讯录的功能。
要求:了解内置Content Provider的实现。了解通讯录读取的方法。
(9)实验九:UI组件实现(2学时)
内容:练习TextView、EditText、Button、RadioButton、Progressbar、CheckBox、SeekBar、RatingBar组件的使用方法。
要求:掌握TextView、EditText、Button、RadioButton、Progressbar、CheckBox、SeekBar、RatingBar的使用方法。
(10)实验十:实现菜单(2学时)
内容:练习定制选项菜单,实现通过选项菜单来更新界面中的文本框的背景颜色。练习菜单与Intent,使用setIntent方法为每个MenuItem绑定Intent对象。练习上下文菜单、Intent动态菜单的使用。
要求:了解选项菜单、上下文菜单、子菜单的使用方法、Intent动态菜单选项的使用方法。
(11)实验十一:通知的使用(2学时)
内容:练习Toast和Notification的使用。
要求:了解Notification类使用。掌握Toast类使用。
(12)实验十二:实现Dialog(2学时)
内容:练习AlertDialog的实现方法,Dialog与Activity的交互,自定义Dialog。
要求:了解AlertDialog的实现方法,Dialog的底层运行机制,自定义Dialog。掌握Dialog事件处理,掌握Dialog与Activity的交互。
(13)实验十三:线程间通信(2学时)
内容:练习线程间通信的方法。练习AsyncTask的使用方法。
要求:了解AsyncTask类使用方法。掌握线程间通信的方法。
(14)实验十四:文件操作(2学时)
内容:练习文件读写操作,操作SD卡上的文件,文件监听器的实现。
要求:了解中文乱码处理方法。了解操作SD卡上的文件的方法。掌握文件读写操作。
(15)实验十五:综合小程序(6学时)
内容:综合运用所学知识,编写一个音乐播放器。
要求:掌握Android编程基础知识和开发技术。
四、本课程与其它课程的联系与分工
本课程的先修课程:C语言程序设计、Java程序设计。
五、对学生能力培养的要求
通过本课程的教学,使学生掌握Android应用开发的基本流程和基本方法,理解基于Android操作系统的应用程序开发全过程。通过上机实践和案例教学,提高学生在手机软件开发方面的编程能力和分析、解决问题的能力,启发学生的创新意识,使学生具有开发Android应用的基本能力。
六、课程学时分配
总学时48,其中讲课16学时,上机 32学时。课程主要内容和学时分配见课程学时分配表。
课程学时分配表
学环节 时数 课程内容 | 讲课 | 上机 | 实验 | 习题及讨论 | 小计 |
Android基础知识 | 2 | 2 |
|
| 4 |
Android项目结构分析 | 4 | 18 |
|
| 22 |
设计用户界面 | 4 | 6 |
|
| 10 |
2D图形绘制与多媒体 | 2 | 6 |
|
| 8 |
定位服务与地图应用 | 2 |
|
|
| 2 |
网络编程 | 2 |
|
|
| 2 |
总计 | 16 | 32 |
|
| 48 |
七、主要教学方法
采用理论讲解与多媒体演示相结合的教学方法,充分重视实践性教学环节,注重理论与实践相结合。理论教学从基础入手,循序渐进地讲授Android的主要功能和用法。在实践教学中建议采用案例教学法、项目教学法。通过课堂演示式教学,结合上机编程练习,深入浅出的将教学要点融入开发案例中。
八、建议教材和教学参考书目
1.教材
[1]《Android从入门到精通》,明日科技,清华大学出版社,2012年
2.主要参考书
[1]《疯狂Android讲义(第3版)》,李刚,电子工业出版社,2015年
[2]《深入解析Android 5.0系统》,刘超,人民邮电出版社,2015年
[3]《Android 4 高级编程(第3版)》,(英)Reto Meier,佘建伟,赵凯译,清华大学出版社,2013年
[4]《Android经典项目案例开发实战宝典》,郭金尚等,清华大学出版社,2013年
九、课程考核
本课程采用闭卷考试方式,总评成绩由平时成绩和期末成绩组成,无期中考试。平时成绩占总评的40%,期末成绩占总评的60%。平时成绩从作业、上课出勤率、上机等几方面进行考核。
十、说明
无
执笔人:卞璐审核人:赵航教学院长(主任):王芳