Android应用开发案例教程(第2版)
作 者:毋建军,林瀚,梁立新 编
定 价:79.8
出 版 社:清华大学出版社
出版日期:2021年04月01日
页 数:492
装 帧:平装
ISBN:9787302572466
本教材从3G Android设计开发过程与方法出发,以Java语言为媒介,重点讲述Android应用开发的核心技术和应用。本教材的特色是以项目实践作为主线贯穿其中,提供了一个完整的项目案例,力求使读者不但知其然,而且知其所以然,因此本书即可以作为初学Android的基础教程,对已经掌握了部分3G开发方面知识的读者亦可起到画龙点睛的作用。本教材内容从简到难,覆盖面广,一些内容具有一定的深度,适用面较广,适合于作为计算机及其相关专业教学用书,也可用于其它理工科专业的计算机教学参考书。对于有志于深入学习软件工程的广大电脑爱好者,本书亦是一个好的选择。
本书采用“项目服动(Project-Driven)”的教学组织模式,以近期新的Android操作系统和Android Stute集成环境为基础,通过完整的移动Android系统项目系统地介绍使用Android 技术设计与开发应用系修的理论和方法。全书共11章,介绍Android开发基础,Android在线医药应用,Android应用程序Android UI基础、Android UI系统控件基础,Android UI系统控件进阶,Android UI菜单、对话极Android组件广播消息与服务,Android数据存储与访问,手机通信服务,Map API服务等内容。本书注重理论与实践相结合,内容详尽,提供大量实例,突出5G网络下应用开发能力的渐进式培养将一个真实的系统应用项目知识点分解在各章作为案例讲解,是一本实用性突出的教材。本书可作为普通高等学校计算机类相关专业本、专科生Android应用null
毋建军,北京政法职业学院教师,中国科学院软件研究所硕士研究生。主要研究方向: Blog搜索引擎;信息检索;自然语言处理;机器学习。主编教材:《网站服务器搭建与管理》 ,清华大学出版社。发表主要论文:《基于Topic的Blog隐含社区发现》、《藏文短语及其嵌套短语的提取》、《Extracting Latent Communities from Blogs based on Topics》COLIPS Publications,Singapore、 《 Java实训课程体系构建研究》、《基于岗位需求驱动的Java实训课程体系构建研究》等。主持及参与课题:《基于工学结合的JAVA程序设计》实训课程建设及项目资源库的研究开发、《基于企业岗位需求驱动的专业实训体系框架建设—校企共同开发Java实训项目》、《数字水印技术在知识产权保护中的应用研究》、《网络安全实务课程开发与课程设计》市教育科学“十一null
无
第1章Android开发基础1
1.15G网络与智能终端1
1.2Android简介8
1.3搭建Android开发环境11
1.3.1Android开发环境系统要求11
1.3.2Windows系统平台下搭建开发环境12
1.3.3Linux系统平台下搭建开发环境17
1.4Android SDK概述20
1.4.1Android SDK目录结构20
1.4.2Android 常用开发工具21
1.4.3Android SDK实例22
1.5创建Android程序22
1.5.1创建和使用虚拟设备22
1.5.2在Eclipse下创建Android程序25
1.5.3使用Android Studio创建Android程序27
1.5.4命令行创建Android程序28
1.5.5调试Android程序36
习题37
第2章Android在线医药应用——AscentSys医药系统开发38
2.1系统需求分析设计39
2.1.1系统开发背景39
2.1.2系统功能需求39
2.1.3系统开发及部署平台40
2.2系统详细设计分析41
2.2.1Web服务器端系统总体架构设计41
2.2.2Web服务器端系统功能概述43
2.2.3Android手机客户端总体架构设计51
2.2.4AscentSys(艾斯医药)移动客户端系统功能概述51
2.3数据库详细设计分析53
2.3.1数据库平台环境及要求532.3.2数据库及表设计54
2.4Web服务器端功能模块开发58
2.4.1服务器端开发准备58
2.4.2注册登录模块59
2.4.3购物模块59
2.4.4订单模块59
2.5AscentSys医药商务系统移动客户端功能模块开发60
2.5.1移动客户端开发准备60
2.5.2登录界面模块61
2.5.3购物车模块61
2.5.4订单模块62
2.5.5商品列表模块62
2.5.6地图界面模块62
2.6AscentSys移动客户端打包、签名、发布62
2.7AscentSys医药系统部署66
习题69
第3章Android应用程序70
3.1Android项目的构成70
3.1.1目录结构70
3.1.2AndroidManifest.xml文件简介72
3.1.3build目录73
3.1.4res目录74
3.2Android应用程序组成75
3.2.1Android应用程序概述75
3.2.2Activity组件75
3.2.3Service组件76
3.2.4Intent和IntentFilter组件76
3.2.5BroadcastReceiver组件80
3.2.6ContentProvider组件80
3.3Android生命周期81
3.3.1程序生命周期81
3.3.2组件生命周期82
3.4项目案例94
习题97
第4章Android UI(用户界面)基础98
4.1Android UI简介984.2Android UI框架99
4.2.1Android与MVC设计99
4.2.2Android与MVP设计100
4.2.3Android与MVVM设计100
4.2.4视图树模型(View和Viewgroup)101
4.3Android UI控件类简介101
4.3.1View类101
4.3.2ViewGroup类102
4.3.3界面控件103
4.4Android UI布局103
4.4.1线性布局LinearLayout104
4.4.2线性布局应用案例105
4.4.3相对布局RelativeLayout107
4.4.4相对布局应用案例108
4.4.5表格布局TableLayout110
4.4.6表格布局应用案例111
4.4.7帧布局FrameLayout114
4.4.8帧布局应用案例114
4.4.9绝对布局AbsoluteLayout117
4.4.10绝对布局应用案例117
4.4.11网格布局GridLayout119
4.4.12网格布局应用案例120
4.5项目案例124
习题128
第5章Android UI系统控件基础129
5.1文本控件简介130
5.1.1文本框TextView130
5.1.2TextView应用案例131
5.1.3编辑框EditText133
5.1.4EditText应用案例135
5.2按钮控件简介136
5.2.1按钮Button136
5.2.2Button应用案例137
5.2.3图片按钮ImageButton140
5.2.4ImageButton应用案例1405.3单选与复选按钮简介143
5.3.1单选按钮RadioButton143
5.3.2复选按钮CheckBox145
5.3.3RadioButton和CheckBox综合应用案例147
5.4时间与日期控件简介149
5.4.1时间选择器TimePicker149
5.4.2日期选择器DatePicker150
5.4.3时间与日期控件综合应用案例151
5.5图片控件简介155
5.5.1图片控件ImageView155
5.5.2ImageView应用案例157
5.5.3切换图片控件ImageSwitcher、Gallery160
5.5.4ImageSwitcher、Gallery综合应用案例161
5.6时钟控件简介166
5.6.1模拟时钟AnalogClock与数字时钟DigitalClock166
5.6.2AnalogClock和DigitalClock应用案例167
5.7项目案例171
习题175
第6章Android UI系统控件进阶176
6.1列表控件简介176
6.1.1列表控件ListView176
6.1.2ListView应用案例178
6.1.3下拉列表控件Spinner181
6.1.4Spinner应用案例183
6.2进度条与滑块控件简介186
6.2.1进度条ProgressBar186
6.2.2ProgressBar应用案例186
6.2.3滑块SeekBar189
6.2.4SeekBar应用案例190
6.3评分控件简介193
6.3.1评分控件RatingBar193
6.3.2RatingBar应用案例193
6.4自动完成文本控件简介196
6.4.1自动完成文本控件AutoCompleteTextView196
6.4.2AutoCompleteTextView应用案例197
6.5Tabhost控件简介1996.5.1Tabhost控件199
6.5.2Tabhost应用案例200
6.6视图控件简介203
6.6.1滚动视图控件ScrollView203
6.6.2ScrollView应用案例203
6.6.3网格视图控件GridView206
6.6.4GridView应用案例206
6.7Android 事件处理209
6.7.1Android事件和监听器209
6.7.2Android事件处理机制210
6.7.3Android事件处理机制应用案例214
6.7.4按键事件应用案例219
6.7.5触摸事件应用案例223
6.8项目案例226
习题229
第7章Android UI菜单、对话框230
7.1菜单控件Menu230
7.1.1Menu简介230
7.1.2选项菜单231
7.1.3选项菜单应用案例233
7.1.4子菜单236
7.1.5子菜单应用案例237
7.1.6快捷菜单240
7.1.7快捷菜单应用案例242
7.2对话框控件Dialog246
7.2.1对话框Dialog简介246
7.2.2警告(提示)对话框AlertDialog246
7.2.3AlertDialog应用案例246
7.2.3日期选择对话框DatePickerDialog250
7.2.4DatePickerDialog应用案例250
7.2.5时间选择对话框TimePickerDialog253
7.2.6TimePickerDialog应用案例254
7.2.7进度对话框ProgressDialog257
7.2.8ProgressDialog应用案例257
7.3信息提示控件260
7.3.1Toast控件简介2607.3.2Toast应用案例261
7.3.3Notification控件简介264
7.3.4Notification应用案例266
7.4项目案例269
习题274
第8章Android组件广播消息与服务275
8.1Intent消息通信275
8.1.1Intent简介275
8.1.2使用Intent进行组件通信278
8.1.3使用Intent启动Activity279
8.1.4获取Activity返回值285
8.1.5IntentFilter原理与匹配机制288
8.2Intent广播消息291
8.2.1广播消息292
8.2.2BroadcastReceiver监听广播消息292
8.2.3BroadcastReceiver应用案例295
8.3Service组件服务299
8.4项目案例300
习题308
第9章Android数据存储与访问309
9.1SharedPreferences311
9.1.1SharedPreferences简介311
9.1.2读取应用程序数据案例313
9.2文件存储317
9.2.1文件存储简介317
9.2.2文件存储应用案例319
9.2.3SD卡存储简介328
9.2.4SD卡存储应用案例329
9.3SQLite数据库存储336
9.3.1SQLite数据库简介336
9.3.2创建SQLite数据库方式339
9.3.3SQLite数据库操作342
9.3.4SQLite数据库管理345
9.3.5SQLite数据库应用案例3479.4数据共享358
9.4.1ContentProvider简介358
9.4.2Uri、UriMatcher和ContentUris简介359
9.4.3创建ContentProvider361
9.4.4ContentResolver操作数据363
9.4.5ContentProvider应用案例363
9.5网络存储367
9.5.1网络存储简介367
9.5.2网络存储应用案例367
9.6数据存储项目案例371
习题393
第10章手机通信服务394
10.1短信服务394
10.1.1短信服务简介394
10.1.2短信发送与提示案例395
10.1.3短信发送状态查询案例400
10.2电话服务404
10.2.1电话服务简介404
10.2.2接打电话案例404
10.3E-mail服务408
10.3.1邮件协议SMTP简介408
10.3.2发送邮件案例412
10.4网络资源访问与处理419
10.4.1使用URL读取网络资源420
10.4.2使用HTTP访问网络资源(HttpURLConnection)421
10.4.3使用HTTP访问网络应用案例424
10.5项目案例432
习题451
第11章Map API服务452
11.1地理位置定位服务452
11.1.1Android Location API简介453
11.1.2获取位置定位案例456
11.2Map服务460
11.2.1Map API简介460
11.2.2Android Studio中配置Map SDK461
11.3项目案例465
习题472