计算机类教材 > 软件工程
Android移动应用基础教程(Android Studio)(第3版)
书号:9787113302597 套系名称:“十四五”应用技术型人才培养系列教材
作者:黑马程序员 出版日期:2023-07-01
定价:59.00 页码 / 开本:无 /16
策划编辑:翟玉峰 责任编辑:翟玉峰 贾淑媛
适用专业:计算机类 适用层次:高等教育
最新印刷时间:2023-07-01
资源下载
教学课件
教学素材
习题答案(暂无)
教学案例(暂无)
教学设计
教学视频(暂无)
内容简介
前言
目录
作者介绍
图书特色
本书为《Android移动应用基础教程(Android Studio)》(第2版)的升级版,是一本Android入门书籍。本书站在初学者的角度对Android基础知识进行深入的分析与讲解,书中使用生动形象的情景化举例,将复杂和难以理解的知识简单化。针对书中的每个知识点,还精心设计了相应的案例,力求每个案例都能贴合实际工作需求,真正做到把书本上的知识应用到实际开发中。 本书共16章,其中,第6、12、15章分别是总结1~5章、7~11章、1~14章的实战项目,第16章为拓展阅读——Flutter与鸿蒙。通过这些项目的学习,可以对基础知识进行巩固与融合,让初学者掌握基础知识在实际开发中的用法,达到理论与实践相结合的目的,使初学者成为一名专 业的编程人员。 本书附有教材大纲、教学设计、教学PPT、源代码等教学资源,同时为了帮助初学者更好地学习本书中的内容,还提供了在线答疑服务,欢迎读者关注。 本书既可以作为高等院校本、专科计算机类相关专业的“移动互联网”课程专用教材,也可以作为Android爱好者的入门书籍。
本书在编写的过程中,贯彻和落实党的二十大精神,将立德树人放在首位,通过案例加深学生对知识的认识与理解,注重培养学生的创新精神、实践能力和社会责任感。案例设计从现实需求出发,激发学生的学习兴趣和动手思考的能力,充分发挥学生的主动性和积极性,增强学习信心和学习欲望,培养学生分析问题和解决问题的能力。在知识和案例的讲解中融入了素质教育的相关内容,引导学生树立正确的世界观、人生观和价值观,进一步提升学生的职业素养,落实德才兼备的高素质卓越工程师和高技能人才的培养要求。此外。编者依据书中的内容提供了线上学习资源,体现现代信息技术与教育教学的深度融合,进一步推动教育数字化发展。 为什么要升级《Android移动应用基础教程(Android Studio)》(第2版) Android是Google公司开发的基于Linux的开源操作系统,主要应用于智能手机、平板电脑等移动设备。经过短短几年的发展,Android系统在全球得到了大规模推广,除智能手机和平板电脑外,还可用于穿戴设备、智能家具等领域。随着Andriod的迅速发展,开发Android应用使用的工具版本也在不断更新,由原来的Android Studio 3.2.0更新到Android Studio 2021.2.1。为了适应市场的需求,让读者看到最新的技术和开发工具,本书在第2版的基础上进行了升级,将开发工具的版本替换为Android Studio 2021.2.1,并添加了一些比较新颖有趣的案例,如相册界面、小猴子摘桃、饭堂小广播、数鸭子、商品砍价界面、绘制小狗、飞舞的蝴蝶和鸟等。在本书的第15章中还添加了一个综合项目——网上订餐,该项目总结了前面第1~14章学习的知识点,有助于读者对前面知识的巩固。 如何使用本书 本书是一本Android入门书籍,全书通过30余个案例来讲解Android基础知识在开发中的运用。在学习本书之前,一定要具备Java基础知识,众所周知,Android开发使用的是Java语言。初学者在使用本书时,建议从头开始循序渐进的学习,并且反复练习书中的案例,以达到熟能生巧,为我所用的目的,如果是有基础的编程人员,则可以选择感兴趣的章节跳跃式的学习,不过书中的案例最好动手实践一下。如果在学习过程中遇到障碍,可以先回到前面的相关章节重新学习,然后依照关联性继续学习后续章节,依照这种方式学习能够让本书发挥最大的作用。 本书共分为16个章节,接下来分别对每个章节进行简单介绍,具体如下: 第1~3章主要讲解了Android的基础知识,包括Android发展历史、Android体系结构、开发环境搭建、资源的管理与使用、程序调试、常见界面布局、常见界面控件等。通过这三章的学习,初学者可以创建简单的布局界面。 第4章主要讲解了Activity与Fragment,包括它们的生命周期、创建、使用等。通过本章的学习,初学者可以完成简单的界面交互操作,并且实现界面控件的点击事件。 第5章主要讲解了Android中的数据存储,包括文件存储、SharedPreferences存储、SQLite数据库存储等知识,并提供保存QQ账号与密码、绿豆通讯录等实际开发中的案例。本章的知识非常重要,几乎每个Android程序都会涉及数据的存储,因此要求初学者一定要熟练掌握这部分内容。 第6章主要讲解了一个记事本案例,该案例总结了前面第1~5章的知识点。在记事本案例的实现过程中熟悉了recyclerview控件的使用、数据库的相关操作、Activity的跳转以及数据回传等知识点,这些知识点在Android项目中会经常使用,因此要求大家能够掌握本章内容,方便后续开发其他项目。 第7~9章主要讲解了Android中的三个组件,分别是内容提供者、广播接收者以及服务,包括内容提供者的创建、访问其他应用程序、内容观察者、广播的创建、发送与接收、服务的创建、生命周期,并讲解了音乐播放器等案例。通过这三章的学习,初学者可以使用内容提供者、服务以及广播开发后台程序。 第10章主要讲解了Android事件处理,包括基于回调机制的事件处理、基于监听接口机制的事件处理以及Handler消息机制等知识,通过对本章的学习,可以掌握Android中常见的事件处理的知识。 第11章主要讲解了 Android 中的网络编程,包括 HTTP 简介、使用HttpURLConnection访问网络、使用WebView进行网络开发以及JSON解析等知识,并提供了商品砍价界面等案例。通过本章的学习,初学者可以掌握如何进行网络请求,并解析获取的JSON数据。 第12章主要讲解了一个智能聊天机器人案例,该案例总结了第7~11章的知识点,在智能聊天机器人案例实现的过程中熟悉了网络请求、JSON解析、Handler处理等知识点,这些知识点会在后续Android项目中经常使用,因此要求初学者熟练掌握本章内容。 第13~14章主要讲解了Android中的图形图像处理和多媒体应用开发的相关知识,包括绘图、动画、为图像添加特效、音频与视频的播放等知识,通过这两章的学习,初学者可以掌握视频播放器、音乐播放器、动画以及图像特效的开发原理。 第15章主要讲解了一个网上订餐项目,该项目总结了第1~14章的知识点,在网上订餐项目的实现过程中使用了异步线程访问网络、Tomcat服务器、Handler消息通信、JSON解析等知识,这些知识点在后来开发项目中是必须要使用的,因此希望读者认真分析每个模块的逻辑流程,并按照步骤完成项目。 第16章主要讲解了Google公司开发的跨平台框架Flutter和华为公司开发的鸿蒙操作系统的诞生、框架结构、特征及开发步骤,作为Android技术相关的新技术的拓展内容。 在学习本书时,读者首先要做到对知识点的理解,然后要动手练习书中所提供的案例或项目。如果读者在理解知识点的过程中遇到困难,建议不要纠结于某个地方,可以先往后学习,通常来讲,看到后面对知识点的讲解或者其他小节的内容后,前面看不懂的知识点一般就能理解了,如果读者在动手练习的过程中遇到问题,建议多思考,厘清思路,认真分析问题发生的原因,并在问题解决后多总结。 本书的编写和整理工作由传智播客教育科技有限公司完成,主要参与人员有高美云、柴永菲、全建玲、韩冬、张瑞丹、王颖、梁志琪等,研发小组全体成员在这近一年的编写过程中付出了很多辛勤的汗水,在此一并表示衷心的感谢。 意见反馈 尽管我们尽了最大的努力,但书中难免会有不妥之处,欢迎各界专家和读者朋友们来信来函给予宝贵意见,我们将不胜感激。您在阅读本书时,如发现任何问题或有不认同之处,可以通过电子邮件与我们取得联系。请发送电子邮件至:itcast_book@vip.sina.com。 黑马程序员 2022年12月于北京
第1章Android基础入门 1 1.1 Android简介 1 1.1.1 通信技术 1 1.1.2 Android发展历史 2 1.1.3 Android体系结构 4 1.1.4 Dalvik虚拟机 5 1.2 Android开发环境搭建 6 1.2.1 Android Studio安装 6 1.2.2 模拟器创建 15 1.2.3 在Android Studio中下载SDK 19 1.3 开发第一个Android程序 24 1.4 Android程序结构 26 1.5 资源的管理与使用 27 1.5.1 图片资源 27 1.5.2 主题和样式资源 27 1.5.3 布局资源 29 1.5.4 字符串资源 29 1.5.5 颜色资源 30 1.5.6 尺寸资源 31 1.6 程 序 调 试 32 1.6.1 单元测试 32 1.6.2 Logcat的使用 35 本章小结 37 本章习题 38 第2章Android常见界面布局 39 2.1 View 39 2.2 界面布局的编写方式 40 2.2.1 在XML文件中编写界面布局 40 2.2.2 在Java代码中编写界面布局 40 2.3 常见界面布局 41 2.3.1 布局的通用属性 41 2.3.2 RelativeLayout 42 2.3.3 LinearLayout 45 2.3.4 TableLayout 47 2.3.5 FrameLayout 48 2.3.6 ConstraintLayout 50 本章小结 52 本章习题 52 第3章Android常见界面控件 54 3.1 简单控件的使用 54 3.1.1 TextView控件 54 3.1.2 EditText控件 56 3.1.3 Button控件 58 3.1.4 ImageView控件 61 3.1.5 RadioButton控件 63 3.1.6 CheckBox控件 66 3.1.7 Toast类 69 3.2 列表控件的使用 69 3.2.1 ListView控件的使用 69 3.2.2 常用数据适配器(Adapter) 70 3.2.3 实战演练——超市界面 71 3.2.4 RecyclerView控件的使用 75 3.2.5 实战演练——相册界面 78 3.3 自定义View 81 本章小结 84 本章习题 84 第4章程序活动单元Activity 86 4.1 Activity的生命周期 86 4.1.1 生命周期状态 86 4.1.2 生命周期方法 87 4.2 Activity的创建、配置、启动和关闭 91 4.2.1 创建Activity 91 4.2.2 配置Activity 93 4.2.3 启动和关闭Activity 94 4.3 Intent与IntentFilter 94 4.3.1 Intent 94 4.3.2 IntentFilter 96 4.4 Activity之间的跳转与数据传递 97 4.4.1 在Activity之间的数据传递 97 4.4.2 Activity之间的数据回传 98 4.4.3 实战演练——小猴子摘桃 102 4.5 任务栈和启动模式 107 4.5.1 Android中的任务栈 107 4.5.2 Activity的启动模式 107 4.6 使用Fragment 109 4.6.1 Fragment简介 109 4.6.2 Fragment的生命周期 110 4.6.3 创建Fragment 111 4.6.4 在Activity中添加Fragment 111 4.6.5 实战演练——订餐菜单 112 本章小结 121 本章习题 121 第5章数据存储 123 5.1 数据存储方式 123 5.2 文件存储 124 5.2.1 将数据存入文件中 124 5.2.2 从文件中读取数据 127 5.2.3 实战演练—— 保存QQ账号与密码 128 5.3 SharedPreferences 133 5.3.1 将数据存入SharedPreferences中 133 5.3.2 读取与删除SharedPreferences中的数据 133 5.3.3 实战演练—— 保存QQ账号与密码 134 5.4 SQLite数据库 136 5.4.1 SQLite数据库的创建 136 5.4.2 SQLite数据库的基本操作 137 5.4.3 SQLite数据库中的事务 140 5.4.4 实战演练——绿豆通讯录 141 本章小结 146 本章习题 146 第6章阶段案例——记事本 148 6.1 需求分析 148 6.1.1 业务需求分析 148 6.1.2 功能结构分析 148 6.1.3 数据库设计分析 149 6.1.4 界面需求分析 149 6.2 开发环境介绍 151 6.3 实现记事本的功能 151 6.4 实现添加与修改记录的功能 151 6.5 运行结果 151 本章小结 152 第7章内容提供者与内容观察者 153 7.1 内容提供者概述 153 7.2 创建内容提供者 154 7.3 访问其他应用程序 156 7.3.1 查询其他程序的数据 156 7.3.2 实战演练——读取手机通讯录 158 7.4 内容观察者 165 7.4.1 什么是内容观察者 166 7.4.2 实战演练——监测数据变化 167 本章小结 176 本章习题 176 第8章广播机制 178 8.1 广播机制的概述 178 8.2 广播接收者 179 8.2.1 什么是广播接收者 179 8.2.2 创建广播接收者 180 8.3 自定义广播与广播的类型 182 8.3.1 自定义广播 182 8.3.2 实战演练——饭堂小广播 183 8.3.3 广播的类型 186 8.3.4 实战演练——数鸭子 187 本章小结 197 本章习题 197 第9章服务 198 9.1 服务概述 198 9.2 服务的创建 199 9.3 服务的生命周期 200 9.4 服务的启动方式 201 9.4.1 调用startService()方法启动服务 201 9.4.2 调用bindService()方法启动服务 205 9.5 服务的通信 210 9.5.1 本地服务通信和远程服务通信 210 9.5.2 实战演练——音乐播放器 211 本章小结219 本章习题219 第 10 章Android事件处理 221 10.1 事件处理概述 221 10.2 基于回调机制的事件处理 221 10.2.1 基于回调机制的事件处理简介 222 10.2.2 onKeyDown()方法 222 10.2.3 onKeyUp()方法 224 10.2.4 onTouchEvent()方法 225 10.2.5 onFocusChanged()方法 227 10.3 基于监听接口机制的事件处理 227 10.3.1 基于监听接口机制的事件处理简介 227 10.3.2 OnClickListener接口 229 10.3.3 OnLongClickListener接口 231 10.3.4 OnFocusChangeListener接口 232 10.3.5 OnKeyListener接口 234 10.3.6 OnTouchListener接口 237 10.4 Handler消息机制 238 本章小结 239 本章习题 239 第11章网络编程 241 11.1 通过HTTP访问网络 241 11.1.1 HTTP简介 241 11.1.2 使用HttpURLConnection访问网络 242 11.2 使用WebView进行网络开发 243 11.2.1 使用WebView浏览网页 244 11.2.2 使用WebView执行HTML代码 245 11.2.3 设置WebView支持JavaScript 247 11.3 JSON数据解析 250 11.3.1 JSON数据 250 11.3.2 JSON解析 252 11.3.3 实战演练——商品砍价界面 255 本章小结 264 本章习题 264 第12章阶段案例——智能聊天机器人 266 12.1 需求分析 266 12.1.1 业务需求分析 266 12.1.2 模型需求分析 266 12.1.3 界面需求分析 267 12.2 开发环境介绍 268 12.3 聊天功能业务实现 268 本章小结 268 第13章图形图像处理 269 13.1 常用的绘图类 269 13.1.1 Bitmap类 269 13.1.2 BitmapFactory类 270 13.1.3 Paint类 270 13.1.4 Canvas类 271 13.1.5 实战演练——绘制小狗 271 13.2 为图像添加特效 273 13.3 动画 276 13.3.1 补间动画 276 13.3.2 逐帧动画 282 13.3.3 属性动画 285 13.3.4 实战演练——飞舞的蝴蝶和鸟 289 本章小结 291 本章习题 291 第14章多媒体应用开发 293 14.1 音频播放 293 14.1.1 使用MediaPlayer类播放音频 293 14.1.2 使用SoundPool类播放音频 295 14.1.3 实战演练——弹钢琴 297 14.2 视频播放 300 14.2.1 使用VideoView控件播放视频 300 14.2.2 实战演练——VideoView视频播放器 301 14.2.3 使用MediaPlayer类和SurfaceView控件播放视频 303 14.2.4 实战演练——SurfaceView视频播放器 305 本章小结 311 本章习题 311 第15章综合项目——网上订餐 313 15.1 项目分析 313 15.1.1 项目概述 313 15.1.2 开发环境 314 15.1.3 模块说明 314 15.2 效果展示 314 15.2.1 店铺界面 314 15.2.2 店铺详情界面 315 15.2.3 菜品详情界面 316 15.2.4 订单界面 317 15.3 服务器数据准备 317 15.4 实现店铺功能业务 319 15.5 实现店铺详情功能业务 319 15.6 实现菜品详情功能业务 320 15.7 实现订单功能业务 320 本章小结 320 第16章拓展阅读——Flutter与鸿蒙 321 16.1 初识Flutter 321 16.1.1 Flutter的诞生 321 16.1.2 Flutter的发展历史 322 16.1.3 Flutter框架的结构 322 16.1.4 Flutter的特性 23 16.2 Flutter的开发语言 324 16.2.1 Dart语言简介 324 16.2.2 Dart语言的优势 325 16.3 初识鸿蒙 325 16.3.1 鸿蒙的诞生 326 16.3.2 鸿蒙概述 326 16.3.3 鸿蒙的技术架构 326 16.4 搭建鸿蒙开发环境 328 16.4.1 下载与安装DevEco Studio 328 16.4.2 下载Node.js与SDK 328 16.4.3 创建模拟器 328 16.5 开发第一个鸿蒙程序 329 16.6 鸿蒙程序结构 331 本章小结 332
江苏传智播客教育科技股份有限公司(简称“传智教育”)是一家培养高精尖数字化专业人才的公司。传智教育致力于为企业优选一流的人才的培训理念,经过多年的教学探索及战略布局,已向着综合型职业教育集团发展。“黑马程序员”是传智播客旗下高端IT教育品牌。
本书既可以作为高等院校本、专科计算机类相关专业的“移动互联网”课程专用教材,也可以作为Android爱好者的入门书籍。