Android应用开发项目教程 (第二版)

 Android应用开发项目教程 (第二版) 教材名称: Android应用开发项目教程 (第二版)
ISBN号: 978-7-89436-668-9 作者: 付丽梅
字数: 654千字 规格: 16开
印制时间: 2020-02-01 出版日期: 2021-02-01
定价: 65 元 样章下载: Android应用开发项目教程(第二版)—样章.pdf
购买地址:

1.教材的基本信息
(1)适用对象
本教材适合于高校软件工程及相关专业学生选用,也可被基于Android的Apps开发爱好者参考使用,具有通用性。可以根据学习者层次不同选择相关能力指标、知识点进行教学和学习。
(2)具备的知识和能力基础
需要具备基本的面向对象编程思想、数据库理论知识和查阅参考资料文献的能力。阅读本教材要求具备基本的Java编程能力。
(3)预期学习效果目标内容学习效果理论知识掌握Android的界面技术掌握Android组件技术、后台服务和广播技术掌握Android本地存储及网络编程技术理解移动互联网应用程序的基本框架理解移动互联网应用程序开发规范工程能力
效果应用Android页面技术开发用户体验好的Apps应用设计具有商业意图的Apps,通过一些商业活动推广Apps理解软件通过不断解决生产生活中的信息问题,而不断涌现、改进、完善的过程能够开发一个典型的移动互联网应用项目素质能力团队合作,协作能力通过查阅搜索资料进行自主学习,能够根据项目需要学习新技术、新方法,并提出解决方案创新,在模仿的基础上创新(4)教材编写团队情况介绍
本教材是移动应用开发课程组所有一线教师多年Android应用开发课程授课及项目开发和实训、实践的结晶。本教材从CDIO理念出发,以一个课程项目贯穿始终。教材编写团队成员都在移动互联网应用开发领域有着丰富的开发和教学经验,近几年指导学生参加多项移动互联网开发领域的比赛及大学生创新创业项目,都取得了比较好的成绩,且项目组成员与公司合作开发的Apps项目已上线推广使用。
感谢参与本教材编写和审阅的所有老师,感谢他们认真、严谨的工作,保证教材高质量地完成。最后,感谢大连东软信息学院软件工程系领导,以及教材建设委员会对该教材编写的帮助和支持,感谢东软电子出版社为该教材编写、出版创造的优良条件。
由于作者水平有限,以及编写时间仓促,教材中错误或不妥之处难免,敬请读者批评指正。
2.教材的基本结构与内容组织
(1)教材的基本结构
整本教材共分四篇、17章,遵循TOPCARESCDIO的教学指导原则,本教材由CoffeeStore App的项目构思、设计、实施和运行贯穿始终。内容涵盖Android应用程序的基本工作原理、Android界面技术、组件技术、本地存储技术、网络存储技术、服务与广播、多媒体、传感器、定位与地图、内容提供者及发布应用程序等方面知识。不仅强调理论,同时也重视应用。
本教材的逻辑导学如下图所示。
教材逻辑导学图
(2)教材的内容组织
本教材按照CDIO的教学理念,以逻辑为导引组织教材内容。本教材共分四部分、17章。
第一篇 CoffeeStore项目准备——Android基础开发篇
第1章 Android平台与开发环境,介绍Android开发平台的概述、版本发展历史和系统架构,搭建Android开发环境。
第2章 第一个Android程序,Android程序的基本结构、Android四大组件,以及Android测试环境的搭建和Android Studio开发环境的使用。
第3章 Activity,Activity的基本概念、生命周期和不同Activity之间的传值。
第4章 CoffeeStore项目导学,讲解课程项目CoffeeStore的功能需求,体系结构与原型设计和数据库设计。
第二篇 CoffeeStore的界面开发——Android界面开发篇
第5章 Android界面布局,线性、相对、帧、网格等常用布局管理器的用法。
第6章 Android常用控件,文本类、按钮类、日期与时间类、进度条和星级控件等基本控件用法、Spinnner、Listview、RecyclerView、ViewPager、ViewFlipper等高级控件的用法。
第7章 Android资源,值资源、图像资源、动画资源、样式与主题、菜单与对话框资源的用法。
第8章 Fragment与ToolBar,Fragment与ToolBar的基本概念与用法。
第9章 Android人机交互设计,Android常用事件、手势、语音、人脸识别及Tensorflow Lite框架的用法。
第三篇 CoffeeStore的数据存储解决方案——Android数据存储解决方案篇
第10章 本地存储技术,介绍了简单数据存储类,Android文件和SQLite数据库。
第11章 网络编程,介绍了Handler机制,异步任务类、JSON数据格式、HttpUrlConnection的使用及OkHttp网络框架。
第四篇 Android高级开发篇
第12章 系统服务与广播,包括使用Intent与PendingIntent实现打电话、发邮件及系统通知的功能,包括运行时权限、广播的基本概念、广播的实现方式、服务的基本概念、隐式启动与显示启动、服务的生命周期。
第13章 多媒体,音频与视频处理、照相机的使用及Android 2D绘图。
第14章 传感器,传感器的基本概念及常用传感器的用法。
第15章 地图与定位,Android定位API,百度地图开发。
第16章 内容提供器ContentProvider,ContentProvider的概念及用法。
第17章 发布应用程序,代码混淆、数字签名及应用程序的发布。
第一篇CoffeeStore项目准备——Android基础开发篇
第1章Android平台与开发环境2
1.1Android平台2
1.1.1Android平台介绍2
1.1.2Android已发布的版本3
1.1.3Android平台特点4
1.1.4Android平台架构5
1.2搭建Android开发环境6
1.2.1Android开发环境概述6
1.2.2下载和安装Android Studio与Android SDK7
本章小结10
本章习题10
第2章第一个Android应用程序11
2.1第一个Android程序HelloWorld11
2.2Android程序结构15
2.3Android Studio开发环境的使用16
2.4配置Android测试环境20
2.4.1配置Android测试环境20
2.4.2使用真机运行Android程序21
本章小结22
本章习题22
第3章Activity23
3.1Android四大组件23
3.2Activity的创建24
3.3Activity的生命周期25
3.4Activity间信使Intent31
3.4.1显示调用和隐式调用32
3.4.2向下一个Activity传递数据33
3.4.3返回数据给上一个Activity36
3.5知识拓展:Activity/ActionBarActivity/AppCompatActivity40
本章小结40
本章习题40
第4章CoffeeStore项目导学41
4.1功能描述41
4.2体系结构与知识点42
4.3原型设计44
4.4数据库设计45
本章小结47
本章习题47
第二篇CoffeeStore的界面开发——Android界面开发篇
第5章Android界面布局50
5.1界面布局51
5.1.1线性布局54
5.1.2相对布局59
5.1.3帧布局62
5.1.4网格布局65
5.1.5布局文件include的用法68
5.2项目实战:综合运用常用布局实现CoffeeStore首页界面效果71
5.2.1项目分析71
5.2.2项目实现71
5.2.3项目说明77
本章小结78
本章习题78
第6章Android常用控件80
6.1常用基本控件81
6.1.1文本类控件81
6.1.2按钮类控件90
6.1.3DatePicker98
6.2项目实战:主页底端导航条的实现101
6.2.1项目分析101
6.2.2项目实现101
6.2.3项目说明103
6.3常用高级控件104
6.3.1Spinner下拉列表104
6.3.2ListView列表组件110
6.3.3RecycleView控件126
6.3.4ViewPager与ViewFlipper133
6.4项目实战:店铺列表页的实现139
6.4.1项目分析139
6.4.2项目实现140
6.4.3项目说明143
6.5项目实战:店铺详情页的实现143
6.5.1项目分析143
6.5.2项目实现143
6.5.3项目说明146
6.6知识扩展:创建和使用自定义控件147
本章小结150
本章习题150
第7章Android资源154
7.1值资源155
7.1.1字符串资源155
7.1.2颜色资源157
7.1.3数组资源158
7.2菜单158
7.3对话框164
7.3.1带按钮的对话框164
7.3.2列表选项对话框166
7.3.3多选按钮对话框167
7.4动画资源168
7.4.1补间动画168
7.4.2属性动画174
7.5样式与主题177
7.5.1样式177
7.5.2主题179
7.5.3图像状态(State)资源180
7.6项目实战:CoffeeStore项目中各种资源的使用182
7.6.1项目分析182
7.6.2项目实现182
7.6.3项目说明187
本章小结187
本章习题187
第8章Fragment与ToolBar190
8.1Fragment简介与应用场合190
8.2创建Fragment191
8.3Fragment生命周期196
8.4Activity与Fragment之间的交互199
8.5ToolBar200
8.6项目实战:CoffeeStore主页的实现204
8.6.1项目分析204
8.6.2项目实现204
8.6.3项目说明204
本章小结205
本章习题205
第9章Android人机交互设计206
9.1常用事件207
9.1.1按键事件207
9.1.2触摸事件210
9.2手势识别212
9.3语音识别技术213
9.4人脸识别技术218
9.5Tensorflow Lite框架221
9.6项目实战:CoffeeStore引导页图片切换的实现224
9.6.1项目分析224
9.6.2项目实现225
9.6.3项目实现228
本章小结228
本章习题229
第三篇CoffeeStore的数据存储解决方案——
Android数据存储解决方案篇
第10章本地存储技术233
10.1简单数据存储类SharedPreferences234
10.1.1SharedPreferences的使用场合234
10.1.2使用SharedPreferences存取数据234
10.2Android的文件237
10.2.1文件数据的存储与读取237
10.2.2读写资源文件242
10.3SQLite数据库244
10.3.1SQLite数据库存储数据概述244
10.3.2使用SQLiteOpenHelper类对数据库版本进行管理245
10.3.3使用SQLiteDatabase操作数据库248
10.3.4将数据库与应用程序一起发布249
10.4项目实战:CoffeeStore启动页安装信息的存取250
10.4.1项目分析250
10.4.2项目实现250
10.4.3项目说明251
10.5项目实战:读取数据库文件251
10.5.1项目分析251
10.5.2项目实现252
10.5.3项目说明254
10.6项目实战:CoffeeStore项目中本地收藏夹的实现254
10.6.1项目分析254
10.6.2项目实现255
10.6.3项目说明263
本章小结264
本章习题264
第11章网络编程266
11.1Handler机制266
11.2异步任务268
11.2.1异步任务的使用场合268
11.2.2异步任务类269
11.3JSON数据解析272
11.3.1JSON简介272
11.3.2JSON基本语法272
11.3.3JSON的解析273
11.4HttpURLConnection275
11.4.1HTTP通信接口275
11.4.2HttpURLConnection的使用275
11.5利用异步任务读取服务器端图片信息276
11.6OkHttp277
11.6.1使用OkHttp277
11.6.2post请求传递参数的方法总结281
11.6.3对于OkHttp的使用封装283
11.7项目实战:登录功能284
11.7.1项目分析284
11.7.2项目实现284
11.7.3项目说明295
11.8项目实战:新到商品功能实现296
11.8.1项目分析296
11.8.2项目实现297
11.8.3项目说明305
本章小结305
本章习题306
第四篇Android高级开发篇
第12章系统服务与广播309
12.1Intent310
12.1.1PendingIntent310
12.1.2Intent过滤器310
12.2运行时权限313
12.3Service组件322
12.3.1Service原理和用途322
12.3.2Service的启动方式323
12.3.3Service的生命周期324
12.4广播组件328
12.4.1广播类型及广播的收发328
12.4.2广播接收器的实现329
本章小结335
本章习题335
第13章多媒体336
13.1音频处理337
13.1.1SoundPool类与播放音频337
13.1.2MediaPlayer338
13.1.3MediaRecorder342
13.2视频处理343
13.3Camera服务349
13.4Android的2D绘图355
13.4.1绘图基本的图形355
13.4.2绘图路径359
13.4.3使用SurfaceView绘图362
本章小结365
本章习题365
第14章传感器367
14.1传感器简述367
14.2传感器框架368
14.3传感器类别及参数值370
本章小结376
本章习题376
第15章地图与定位377
15.1位置服务377
15.2地图的定义与显示378
15.2.1申请地图密钥378
15.2.2地图的显示380
15.3地图的定位及路线规划383
15.3.1定位原理383
15.3.2定位与路线规划384
本章小结396
本章习题396
第16章内容提供器ContentProvider397
16.1内容提供器简介397
16.2ContentResolver的基本用法398
16.3读取系统联系人399
本章小结403
本章习题403
第17章发布应用程序404
17.1代码混淆404
17.1.1Android APK反编译404
17.1.2代码混淆405
17.2数字签名408
17.2.1数字签名408
17.2.2制作数字签名证书408
17.3应用商店发布流程412
本章小结415
本章习题415
 
附录Ⅰ学习知识点及能力要点416
Ⅰ.1教材的知识要点及掌握程度416
Ⅰ.2实践项目设计419
Ⅰ.3教材的能力要点及重要程度420
附录ⅡRGB颜色对照表421
参考文献426
 
2016年6月,中国成为国际本科工程学位互认协议《华盛顿协议》的正式会员,这是中国工程教育国际化进程的重要里程碑。“回归工程”、培养学生的“大工程观”是当今国际工程教育的主流理念。《华盛顿协议》对毕业生提出的12条素质要求中,不仅要求工程知识、工程能力,还强调通用能力和品德伦理;在实践上,以学生为中心,以产出为导向,注重对目标达成的支撑及持续改进,与CDIO工程教育实质等效。
CDIO工程教育是近年来国际工程教育改革的最新成果,以“预期学习结果”集合来驱动课程内容、教学方法、教育文化的设计,重视营造工程教育文化,其注重工程能力培养和基于工程项目全生命周期的一体化设计思想,对于国内工程类和相关专业的建设具有重要的实施价值。
作为承载了教学改革思想的载体,融入CDIO工程教育理念的高品质教材,东软CDIO工程教育教材在注重理实结合的同时,也注重对学生八大能力的培养,即:技术知识与推理能力,开放式思维与创新,个人职业能力,沟通表达与团队合作,态度与习惯,责任,价值观,实践构思、设计、实现和运行对社会的贡献。
CDIO工程教育教材是 CDIO教育教学改革在教学实施过程中的集中体现,它不仅承载着课程和项目的教学内容,而且贯穿和体现了CDIO工程教育的理念、思想与方法,是在系统化理论的指导下,将知识、能力、素质培养进行一体化设计,有机融合在教材体系中。教材的编写以能力培养为主线,以案例教学为引导,以项目为载体,充分体现“做中学”和“学中做”的思想,具有以下优势:
(1)以能力培养为主线,培养学生专业知识学习能力和工程实践能力。
(2)以案例为驱动,在做案例的过程中学习新知识,充分体现了“做中学”。
(3)以项目为载体,基于工程化教育方法,按照分析、设计、实施、运行展开项目及知识点的讲解。
(4)围绕专业知识结构和能力体系设计教材,实现同一专业下不同教材紧密的关联性。
(5)内容编排循序渐进,符合人的认知规律。
(6)适应柔性化教学变革,构建一体化、立体化教学资源。
CDIO工程教育教材可供以应用型人才为培养目标的高等院校以及职业培训机构作为教材使用。
目前,CDIO工程教育教材的建设还处于探索阶段,是一项创造性的工作,尚需要通过改革的实践不断加以深化和持续改进,任重而道远。