作 者:郭霖 著作 定 价:79 出 版 社:人民邮电出版社 出版日期:2016年12月01日 装 帧:简装 ISBN:9787115439789
??? CSDN超人气博主、CSDN十大博客之星、Android开发者郭霖力作
??? 基于Android 7.0、Android Studio 2.2全新升级
??? Android初学者入门,Android开发者进阶
??? 涵盖Material Design、运行时权限、RecyclerView、百分比布局等全新特性
??? 首版重印数十次,经典畅销,好评如潮,以超高质量的内容赢得了开发者的广泛认可,被誉为Android学习经典书
●第1章 开始启程——你的行Android代码 1
●1.1 了解全貌——Android王国简介 2
●1.1.1 Android系统架构 2
●1.1.2 Android已发布的版本 3
●1.1.3 Android应用开发特色 4
●1.2 手把手带你搭建开发环境 5
●1.2.1 准备所需要的工具 5
●1.2.2 搭建开发环境 5
●1.3 创建你的个Android项目 9
●1.3.1 创建HelloWorld项目 9
●1.3.2 启动模拟器 12
●1.3.3 运行HelloWorld 15
●1.3.4 分析你的个Android程序 16
●1.3.5 详解项目中的资源 22
●1.3.6 详解build.gradle文件 23
●1.4 前行必备——掌握日志工具的使用 26
●1.4.1 使用Android的日志工具Log 26
●1.4.2 为什么使用Log而不使用System.out 27
●1.5 小结与点评 29
●第2章 先从看得到的入手——探究活动 30
●部分目录
内容简介
本书被Android开发者誉为Android学习经典。全书系统全面、循序渐进地介绍了Android软件开发的知识、经验和技巧。
第2版基于Android?7.0对版进行了全面更新,将所有知识点都在新的Android系统上进行重新适配,使用全新的Android?Studio开发工具代替之前的Eclipse,并添加了对Material?Design、运行时权限、Gradle、RecyclerView、百分比布局、OkHttp、Lambda表达式等全新知识点的详细讲解。
本书内容通俗易懂,由浅入深,既适合Android初学者的入门,也适合Android开发者的进阶。 郭霖 著作 郭霖
Android软件开发工程师。从事Android开发工作6年,有着丰富的项目实战经验,负责及参与开发过多款移动应用与游戏,对Android系统架构及应用层开发有着深入的理解。
2013年3月开始,在CSDN上发表Android技术相关博文,很快获得了大量网友的好评。目前博客访问量已超过500万次,评论超过10000条。荣获CSDN认证专家,并被连续评选为CSDN 2013、2014、2015年度博客之星。 前 言
虽然我从事Android开发工作已经很多年了,但是之前从来没有想过自己要去写一本Android技术相关的书。在我看来,写一本书可以算是一个很庞大的工程,写一本好书的难度并不亚于开发一款好的应用程序。
由于我长期坚持在CSDN上发表技术博文,因而得到了大量网友的认可,也积累了一定的名气。很荣幸的是,人民邮电出版社图灵公司的前副总编辑陈冰老师联系上了我,希望我可以写一本关于Android开发技术的书,这着实让我受宠若惊。
在写本书第1版的时候,我可以说是费了相当大的心思。写书和写博客大的区别在于,书的内容不能像博客那样散乱,不能想到哪里写到哪里,而是一定要系统化,要循序渐进,基本上在写第1章的时候就应该把全书的内容都确定下来了。
令我非常欣慰的是,本书的第1版在推出之后获得了广大读者的强烈认可,在短短两年时间等
探索 Android 开发的广阔世界:一本面向初学者的实战指南 开启您的移动应用开发之旅,从零基础到精通,一步步构建您心中的 Android 应用。 是否曾对那些丰富多彩、功能强大的移动应用程序感到好奇,渴望自己也能创造出属于自己的应用?是否曾对 Android 这个全球最受欢迎的移动操作系统充满探索的兴趣,想知道它背后是如何运作的?《第一行代码 Android (第 2 版)》正是为您量身打造的入门之作,它将带领您深入 Android 开发的精彩世界,即使您是完全的编程新手,也能在书中找到清晰的指引和扎实的实践。 本书最大的亮点在于其“实战至上”的学习理念。它摒弃了枯燥乏味的理论堆砌,而是通过一个个精心设计的、贴近实际开发场景的案例,让您在动手实践中学习和掌握 Android 开发的核心知识。从搭建开发环境,到编写第一个“Hello World”程序,再到实现复杂的 UI 交互、数据存储、网络通信,每一个步骤都经过细致的拆解和深入浅出的讲解。您将不再是被动地接受知识,而是主动地去构建、去调试、去解决问题,在这个过程中,您的编程能力和解决问题的能力将得到极大的提升。 深度解析 Android 核心组件,构建坚实的理论基础。 尽管本书以实战为主,但扎实的理论基础是长远发展不可或缺的。本书并未忽视这一点,而是巧妙地将理论知识融入到实战案例中。您将深入了解 Android 应用的四大基本组件:Activity(活动)、Service(服务)、Broadcast Receiver(广播接收器)和 Content Provider(内容提供者)。本书将详细阐述它们各自的功能、生命周期以及它们之间如何协同工作,构建起 Android 应用的骨架。您会明白,每一个界面的出现,每一次后台任务的执行,每一次系统消息的响应,背后都有这些组件在默默地运作。 Activity:这是用户与应用程序交互的主要界面。本书将引导您理解 Activity 的生命周期(创建、启动、暂停、停止、销毁),以及如何在不同状态下有效地管理 Activity,确保应用运行的流畅性和稳定性。您将学习如何创建和管理多个 Activity,以及它们之间的导航和数据传递。 Service:当您的应用需要执行一些长时间运行或在后台进行的操作时,Service 就派上了用场。本书将教会您如何创建和启动 Service,理解前台 Service 和后台 Service 的区别,以及如何通过 Service 实现音乐播放、文件下载等功能,让您的应用在用户不直接操作时也能持续工作。 Broadcast Receiver:这是一个非常强大的组件,用于接收系统广播和应用程序自定义的广播。您将学习如何注册 Broadcast Receiver 来响应各种事件,例如电池电量低、网络状态改变等,从而使您的应用能够及时地对外部变化做出反应,并与其他应用程序进行通信。 Content Provider:当您需要与其他应用程序共享数据,或者访问系统提供的数据时,Content Provider 就发挥了关键作用。本书将详细讲解如何创建自己的 Content Provider,以及如何使用 Content Resolver 来访问其他应用的数据,例如联系人、短信等,从而实现应用间的数据互联互通。 从 UI 设计到交互实现,打造引人入胜的用户体验。 在移动应用开发中,用户界面(UI)和用户体验(UX)是吸引和留住用户的关键。《第一行代码 Android (第 2 版)》将为您提供一套完整的 UI 设计和交互实现的学习路径。您将从最基础的 View(视图)和 ViewGroup(视图组)开始,学习如何使用 XML 布局文件来定义界面元素,例如文本框、按钮、图片等。 本书将重点讲解 Android 提供的丰富 UI 组件,包括: TextView:显示文本信息。 EditText:用户输入文本的区域。 Button:触发操作的按钮。 ImageView:显示图片。 ListView 和 GridView:用于显示列表或网格形式的数据。 RecyclerView:一个更强大、更高效的列表视图,用于展示大量数据。 您将学习如何为这些组件设置属性,调整它们的样式和布局,并通过代码控制它们的行为。 除了静态的 UI 元素,本书还将深入讲解如何实现动态的、响应式的用户交互。您将学习如何为按钮添加点击事件监听器,如何响应用户的触摸操作,如何实现平滑的动画效果,以及如何使用 Fragment(碎片)来构建更灵活、更模块化的 UI。特别是对 RecyclerView 的详细讲解,将使您能够高效地处理大量数据的展示,这在现代移动应用中至关重要。 掌握数据持久化技术,让应用数据永不丢失。 无论是用户设置、应用状态还是用户生成的内容,数据都是移动应用的核心。《第一行代码 Android (第 2 版)》将全面介绍 Android 平台提供的多种数据持久化方案,帮助您将数据安全可靠地存储起来。 您将学习: SharedPreferences:用于存储少量简单的键值对数据,非常适合保存用户偏好设置等信息。 SQLite:一个轻量级的关系型数据库,是 Android 平台内置的强大数据存储解决方案。本书将带领您学习如何创建数据库、定义表结构、执行 SQL 语句进行数据的增删改查,以及如何使用 SQLiteOpenHelper 来简化数据库的管理。 文件存储:直接将数据保存到应用内部存储或外部存储的文件中,适用于存储图片、日志等文件类型的数据。 通过对这些技术的掌握,您的应用将能够记住用户的操作,保存重要的信息,并在下次启动时恢复到之前的状态,极大地提升了用户的使用体验。 连接世界,学习网络通信和数据交互。 在当今互联互通的时代,大多数移动应用都需要与网络进行交互,从服务器获取数据、上传用户生成的内容、实现在线服务等。《第一行代码 Android (第 2 版)》将带您进入网络通信的世界,让您的应用能够轻松地与互联网连接。 本书将讲解: HTTP 协议:理解 Web 通信的基础。 网络请求库:介绍流行的第三方网络请求库,例如 OkHttp,以及如何使用它们来发送 GET、POST 等请求,获取服务器返回的数据。 JSON 解析:学习如何解析服务器返回的 JSON 数据,将其转换为 Java 对象,以便在应用中使用。 图片加载库:讲解如何使用 Glide、Picasso 等高效的图片加载库,在列表中流畅地加载网络图片,避免内存溢出和性能问题。 通过这些学习,您的应用将能够访问互联网上的海量信息,实现与服务器的无缝通信,构建出更具互动性和信息量的应用。 深入理解 Android 的多线程处理和后台任务。 Android 应用的响应速度是衡量应用质量的重要标准。如果耗时操作阻塞了主线程,用户就会感受到卡顿和无响应。本书将深入讲解 多线程 的概念,以及如何在 Android 中进行有效的线程管理,确保应用的流畅运行。 您将学习: Thread 和 Runnable:Java 的基本多线程编程。 AsyncTask:一个简单的异步任务实现,方便在后台执行操作并将结果更新到 UI。 Handler 和 MessageQueue:理解 Android 的消息机制,以及如何通过 Handler 在子线程更新 UI。 线程池:学习如何管理多个线程,提高资源利用率。 后台服务:再次强调 Service 的作用,以及如何将其与多线程结合,执行长时间的后台任务。 通过对多线程的深入理解和应用,您将能够编写出性能更优、用户体验更佳的 Android 应用。 掌握常用第三方库的使用,提升开发效率。 在实际的 Android 开发中,很少有人从零开始编写所有的代码。充分利用强大的第三方库可以极大地提高开发效率和应用质量。《第一行代码 Android (第 2 版)》将精选并讲解一些在 Android 开发中极为常用且高效的第三方库,让您站在巨人的肩膀上。 您将接触到: 网络请求库(如 OkHttp):前面已提及,用于简化网络通信。 图片加载库(如 Glide):前面已提及,用于高效加载和缓存图片。 依赖注入框架(如 Dagger/Hilt):用于管理应用程序的依赖关系,减少代码耦合。 网络通信库(如 Retrofit):另一个非常流行的网络请求库,与 OkHttp 配合使用,提供更简洁的 API。 UI 库:例如 Material Design 组件库,帮助您构建符合 Material Design 规范的现代化 UI。 通过学习这些库的使用,您将能够更快地实现复杂的功能,编写出更健壮、更易于维护的代码。 本书的独到之处: 循序渐进,逻辑清晰:本书的章节安排合理,由浅入深,每个知识点都在前一个知识点的基础上展开,确保您能够逐步建立起对 Android 开发的全面认知。 代码示例丰富,易于理解:书中提供了大量可运行的代码示例,并对每一行代码进行了详细的注释和解释,让您能够轻松地模仿和修改,快速掌握实际操作。 注重细节,解决常见问题:本书不仅讲解了核心知识,还涵盖了许多开发过程中可能遇到的细节问题和常见错误,并提供了相应的解决方案,帮助您少走弯路。 更新及时,紧跟技术发展:针对 Android 技术的快速迭代,本书的第二版进行了内容的更新和优化,引入了更多现代化的开发实践和技术,确保您学习到的知识是最新、最实用的。 谁适合阅读本书? 零基础的编程爱好者:如果您从未接触过编程,但对 Android 开发充满热情,本书将是您完美的起点。 希望跨入移动开发领域的程序员:如果您已经掌握了其他编程语言,但想转战 Android 开发,本书将为您提供一条清晰的学习路径。 在校学生,需要学习 Android 开发课程:本书的内容与大学的 Android 开发课程高度契合,是学习的理想参考资料。 想要提升 Android 开发技能的开发者:即使您已经具备一定的 Android 开发经验,本书中的深入讲解和实战技巧也能帮助您巩固基础,拓宽视野。 《第一行代码 Android (第 2 版)》不仅仅是一本书,它更是一段旅程,一段通往 Android 应用开发世界的精彩旅程。它将陪伴您从最初的困惑,到一点点的理解,再到最终的自信满满地创造出属于自己的应用程序。翻开本书,您将迈出成为一名优秀 Android 开发者最坚实的第一步。准备好迎接挑战,释放您的创造力,开始您的 Android 开发之旅吧!
在我手中,《第一行代码Android(第2版)》这本书散发着一种可靠的、值得信赖的气息。我一直认为,一本好的技术书籍,不仅仅是知识的罗列,更重要的是它能够清晰地梳理出一条学习路径,让读者能够有条不紊地掌握知识。从封面到目录,这本书给我的第一感觉就是“扎实”。它似乎不是那种追求快速吸引眼球的书,而是踏踏实实地致力于传授Android开发的精髓。我期待它能够为我构建起一个完整的知识框架,让我明白Android开发到底是怎么一回事,而不是零散地知道一些零散的API。我尤其好奇书中关于“第一行代码”的具体内容,它是否会从一个非常基础的例子开始,然后逐步引导读者理解Android应用程序的生命周期和运行机制?我希望这本书能够帮我建立起对Android开发的系统性认识,并为我后续更深入的学习打下坚实的基础。这本书的页码也暗示了其内容的丰富性,我期望在阅读过程中,能够学到很多实用的技巧和深入的原理。