| 商品名称: 深入剖析 Android新特性 | 出版社: 电子工业出版社 | 出版时间:2018-05-01 |
| 作者:张波 | 译者: | 开本: 16开 |
| 定价: 79.00 | 页数: | 印次: 1 |
| ISBN号:9787121339332 | 商品类型:图书 | 版次: 1 |
“新”和“旧”是相对的,本书会介绍Android系统5.0至8.0的新增特性。
在这些特性中,有的是Android系统针对旧版本存在问题的改进,例如,针对功耗问题改进的Project Volta和Doze模式,针对权限问题的Runtime Permission;有的是对系统功能的增强,例如,多窗口模式;有的是应对未来行业趋势的发展,例如,对于VR的支持。
Android作为一个跨越了多种设备的软件平台,由于各家厂商对于设备的支持速度不一,在市场上的碎片化现象很严重。在Android 7.0、8.0推出的时候,很多用户可能还在使用4.4甚至更早的版本。而从Android的新版本推出,到*终真正普及,需要一个较长的过渡时期。
这个现象对开发来说既有好处也有坏处。好处是开发者有足够多的时间为新版本的功能和特性做准备,坏处是开发者在开发应用时需要兼顾太多的版本。
本书希望能给开发者们对近几年Android的新特性做一个梳理。随着时间的推移,随着Android新版本的逐步普及,这些内容是开发者在*近几年正好需要的。
另外,这不是一本仅仅告诉读者Android SDK中的API如何使用的书。在本书主要分析这些特性的内部实现上,通过解析AOSP的源码,让读者不仅知其然,也知其所以然。
本书对*近几个版本(5.0 ~ 8.0)的主要新增功能进行整理和解析,本书的重点不仅仅是讲解这些新增功能特性的外部行为,而是在结合AOSP的源码基础上,解析这些功能特性的内部实现。 任何已有的功能都是固定的,随着行业的发展,Android系统在未来可能加入的功能是不确定的,只有掌握了阅读和分析AOSP源码的能力,才能应对不确定的变化,并具备今后能够自行研究Android系统的能力。
强波,江苏南京人,现居住在浙江杭州。就职于阿里巴巴集团-OS事业部-核心系统部门。在阿里,我的花名叫做”未悔“,花名取自《离骚》:”亦余心之所善兮,虽九死其尤未悔“。多年智能操作系统开发经验,热爱钻研技术,也热爱分享技术。现在负责AliOS运行时环境的研究与开发,参与过手机、汽车、平板、TV等多种智能设备的研发工作。个人博客:http://qiangbo.space。
第1章 预备知识 1 1.1 Android系统架构 1 1.2 关于AOSP 3 1.3 理解Android Binder机制 3 1.3.1 Binder机制简介 3 1.3.2 整体架构 4 1.3.3 驱动层 7 1.3.4 Binder Framework C++部分 26 1.3.5 Binder Framework Java部分 54 1.3.6 参考资料与推荐读物 70 第2章 Android系统中的进程管理 72 2.1 关于进程 72 2.2 系统进程与应用进程 73 2.2.1 init进程与init语言 75 2.2.2 Zygote进程 81 2.2.3 system_server进程 84 2.3 应用进程的创建 87 2.3.1 关于应用组件 87 2.3.2 进程与线程 88 2.3.3 ActivityManagerService 89 2.3.4 Activity与进程创建 92 2.3.5 Service与进程创建 94 2.3.6 ContentProvider与进程创建 96 2.3.7 BroadcastReceiver与进程创建 97 2.3.8 参考资料与推荐读物 99 2.4 进程的优先级管理 100 2.4.1 优先级的依据 100 2.4.2 优先级的基础 102 2.4.3 优先级的更新 105 2.4.4 优先级的算法 108 2.4.5 优先级的生效 119 2.4.6 结束语 119 2.4.7 参考资料与推荐读物 120 2.5 进程与内存的回收 120 2.5.1 开发者API 121 2.5.2 虚拟机的垃圾回收 122 2.5.3 开发者的内存回收 122 2.5.4 Linux OOM Killer 123 2.5.5 LowMemoryKiller 125 2.5.6 进程的死亡处理 126 2.5.7 参考资料与推荐读物 127 2.6 结束语 127 第3章 Android系统上的虚拟机 129 3.1 Java语言与Java虚拟机 130 3.1.1 Java语言 130 3.1.2 Java虚拟机 130 3.1.3 Java虚拟机实现架构 130 3.1.4 类加载器(Class loader) 132 3.1.5 垃圾回收 132 3.1.6 结束语 135 3.1.7 参考资料与推荐读物 135 3.2 Dalvik虚拟机 135 3.2.1 Stack-based VS. Register-based 136 3.2.2 Dalvik Executable(dex)文件 137 3.2.3 Dalvik指令 139 3.2.4 Dalvik启动过程 144 3.2.5 程序的执行:解释与编译 153 3.2.6 Dalvik上的垃圾回收 156 3.2.7 参考资料与推荐读物 159 3.3 Android Runtime(ART) 159 3.3.1 ART VS.Dalvik 159 3.3.2 OAT文件格式 162 3.3.3 boot.oat与boot.art 165 3.3.4 Dalvik到ART的切换 166 3.3.5 ART虚拟机的启动过程 169 3.3.6 内存分配 173 3.3.7 垃圾回收 178 3.3.8 JIT的回归 182 3.3.9 ART虚拟机的演进与配置 185 3.3.10 参考资料与推荐读物 186 第4章 用户界面改进 187 4.1 多窗口功能 187 4.1.1 概述 188 4.1.2 开发者相关 189 4.1.3 内部实现 191 4.1.4 参考资料与推荐读物 205 4.2 App Shortcuts 206 4.2.1 开发者API 206 4.2.2 内部实现 209 第5章 系统界面改进 215 5.1 SystemUI整体介绍 215 5.1.1 SystemUI简介 215 5.1.2 SystemUI的初始化 216 5.1.3 System Bar的初始化 221 5.1.4 参考资料与推荐读物 224 5.2 System Bar 224 5.3 Notification 234 5.3.1 开发者API 234 5.3.2 通知栏与通知窗口 240 5.3.3 Notification从发送到显示 243 5.4 Quick Settings 256 5.4.1 开发者API 256 5.4.2 系统实现 260 5.4.3 参考资料与推荐读物 265 第6章 功耗的改进 266 6.1 Project Volta 266 6.1.1 JobScheduler API 267 6.1.2 电量消耗分析工具 277 6.1.3 在虚拟机层面减少电池消耗 279 6.1.4 省电模式 280 6.1.5 结束语 281 6.1.6 参考资料与推荐读物 281 6.2 Doze模式与App StandBy 282 6.2.1 概述 282 6.2.2 了解Doze模式 282 6.2.3 了解App StandBy 284 6.2.4 对其他用例的支持 284 6.2.5 在Doze模式和App StandBy下进行测试 285 6.2.6 Doze模式的实现 287 6.2.7 App StandBy的实现 293 6.2.8 参考资料与推荐读物 297 6.3 Android 8.0上的后台限制 297 6.3.1 概览 298 6.3.2 后台服务限制 299 6.3.3 广播限制 300 6.3.4 系统实现 301 6.3.5 结束语 308 第7章 面向设备管理的改进 310 7.1 多用户的支持 310 7.1.1 术语 311 7.1.2 支持多用户 312 7.1.3 多用户的实现 313 7.1.4 参考资料与推荐读物 333 7.2 设备管理 334 7.2.1 Device Administration API介绍 334 7.2.2 开发设备管理程序 335 7.3 面向企业环境的Android 339 7.3.1 企业环境解决方案 340 7.3.2 受管理资料(Managed Profiles) 340 7.3.3 受管理资料的内部实现 342 7.3.4 参考资料与推荐读物 349 第8章 Android系统安全改进 350 8.1 Android系统安全概览 350 8.2 运行时权限 351 8.2.1 功能介绍 351 8.2.2 新增API 354 8.2.3 参考资料与推荐读物 370 第9章 图形系统改进 371 9.1 整体架构 371 9.1.1 Android图形组件 371 9.1.2 组件 373 9.1.3 Android如何绘制视图 374 9.1.4 关于硬件加速 376 9.1.5 参考资料与推荐读物 377 9.2 图形系统组件 377 9.2.1 Activity与Surface 377 9.2.2 Gralloc 379 9.2.3 BufferQueue 382 9.2.4 Surface 384 9.2.5 参考资料与推荐读物 388 9.3 Project Butter 388 9.3.1 FPS 389 9.3.2 VSYNC 391 9.3.3 Choreographer与VSYNC 392 9.3.4 Triple Buffer 398 9.3.5 参考资料与推荐读物 400 9.4 SurfaceFlinger 400 9.4.1 SurfaceFlinger 介绍 401 9.4.2 Hardware Composer 402 9.4.3 SurfaceFlinger的启动 403 9.4.4 SurfaceFlinger的对外接口 405 9.4.5 VSYNC的传递 407 9.4.6 SurfaceFlinger的事件 409 9.4.7 图层的合成 411 9.4.8 刷新 412 9.4.9 参考资料与推荐读物 413 9.5 Vulkan简介 414 9.5.1 Vulkan组件 414 9.5.2 修改的组件 415 9.5.3 Vulkan API 415 9.5.4 参考资料与推荐读物 415 第10章 系统架构改进 416 10.1 Project Tre
天哪,我得说,《深入剖析 Android新特性》这本书简直就是我期待已久的“救世主”!作为一个每天都在和 Android 屏幕打交道的开发者,我经常感到力不从心。Android 的生态系统变化太快了,每次更新系统,都感觉需要重新学习一大堆东西。这本书就像一位经验丰富的老友,耐心地引导我一步步理解那些复杂而令人兴奋的新变化。我尤其欣赏它在讲解性能优化方面的角度,书中不仅仅是简单地告诉你“要优化”,而是深入到各个子系统,比如电池管理、后台调度,甚至是网络请求的底层处理方式,都进行了细致的分析。它解释了 Android 12 引入的隐私仪表板和权限API的变更,让我明白如何更安全、更负责任地处理用户数据,这在当前隐私保护日益重要的时代尤为关键。书中关于 WorkManager 的深入分析也让我受益匪浅,之前我总是用各种 hacky 的方式来处理后台任务,读完这本书,我才意识到 WorkManager 提供的强大而灵活的解决方案,真正解决了困扰我很久的痛点。而且,它对 CameraX 的讲解也十分到位,让原本复杂的相机开发变得触手可及,我甚至能够轻松地集成一些高级的相机功能。这本书的语言风格非常朴实,但字字珠玑,没有丝毫的废话,每一页都充满了干货。
评分我是一位 Android 初学者,对这个平台的认识还处于一个懵懂的阶段。在朋友的推荐下,我拿到了《深入剖析 Android新特性》这本书。一开始我担心这本书的难度会很高,可能会让我望而却步。但让我意外的是,虽然书名听起来很专业,但作者的写作风格却非常易于理解。他用生动的语言和丰富的图解,将 Android 的一些复杂的新特性,比如 ART 虚拟机的一些优化,或者是新的动画框架,解释得就像在讲故事一样。我最喜欢的部分是关于后台服务和生命周期的讲解,书中用非常直观的方式展示了各种场景下服务组件的生命周期,让我一下子就明白了之前一直感到困惑的地方。我还学到了很多关于文件存储和数据库操作的新方法,这些都是我以前从未接触过的。这本书让我对 Android 的理解不再停留在表面,而是开始触及到一些更底层的原理。虽然我可能还无法完全理解书中的所有技术细节,但它已经在我心中种下了一颗对 Android 技术深深着迷的种子。我相信,随着我技术的不断进步,这本书一定会成为我案头的常备工具书。
评分书籍名称:深入剖析 Android新特性 这本书真是让我眼前一亮!我一直对 Android 的底层机制和新引入的特性充满好奇,尤其是近几年 Android 版本更新的速度非常快,许多强大的新功能涌现出来,让人应接不暇。当我看到《深入剖析 Android新特性》这个书名时,就觉得这正是我一直在寻找的宝藏。迫不及待地翻开它,我的感觉就像是进入了一个精心构建的知识殿堂。作者并没有简单地罗列 API,而是花了大量篇幅去解释这些新特性背后的设计理念、实现原理以及它们如何与现有的 Android 框架协同工作。例如,书中对 Jetpack Compose 的剖析,不仅仅是展示了如何用声明式 UI 编写界面,更深入地讲解了其背后的渲染机制、状态管理以及与传统 View 体系的兼容性。我特别喜欢它对于内存管理新机制的解读,以前我对这方面一直有些模糊,但通过书中详细的图示和代码示例,我才真正理解了 Project Treble 带来的模块化改进,以及一些新的垃圾回收策略是如何优化应用性能的。读完这部分,我感觉自己对 Android 性能调优有了全新的认识,迫不及待想在实际项目中应用这些技巧。而且,书中对 Kotlin Coroutines 在异步编程中的应用讲解得非常透彻,让原本复杂的并发编程变得清晰易懂。总的来说,这本书的知识密度和深度都超出了我的预期,绝对是 Android 开发者提升技术硬实力的一本必读书籍。
评分说实话,一开始我对《深入剖析 Android新特性》抱有一丝怀疑,毕竟“深入剖析”四个字听起来就很有挑战性。然而,翻开这本书之后,我彻底被打动了。它不仅仅是一本技术手册,更像是一堂高质量的在线课程,只不过是以纸质书的形式呈现。作者的讲解逻辑清晰,循序渐进,即使是一些非常晦涩的概念,也能被他解释得明明白白。我尤其被书中对 UI 布局优化新策略的探讨所吸引,它详细分析了 ConstraintLayout 的一些高级用法,以及如何通过测量和布局过程来提升界面的渲染效率。书中对暗黑模式的实现原理和适配策略的讲解,也为我解决了很多实际项目中的难题。另外,它对 Android 13 中引入的通知权限管理和分区的存储访问进行了深入的剖析,让我对如何更好地管理用户权限有了更深刻的理解。让我惊喜的是,书中还触及了一些关于多窗口和分屏交互的新特性,并给出了非常实用的实现建议,这对于开发支持平板和折叠屏的设备开发者来说,绝对是福音。这本书的内容覆盖面广,但又不失深度,对于想要全面了解 Android 最新发展趋势的开发者来说,这本书绝对是不可多得的宝藏。
评分《深入剖析 Android新特性》这本书,简直是我近期阅读体验中最惊艳的一本!我是一名经验丰富的 Android 开发者,一直都在努力跟上 Android 技术的步伐。市场上关于 Android 新特性的书籍不少,但很多都只是浅尝辄止,或者过于理论化。《深入剖析 Android新特性》却做到了一个非常难得的平衡。它不仅深入讲解了新 API 的使用方法,更重要的是,它挖掘了这些 API 背后的设计哲学和实现原理。例如,书中关于 Jetpack DataStore 的讲解,就不仅仅是告诉你如何存储数据,还深入剖析了其与 SharedPreferences 的对比,以及在性能和线程安全方面的优势。我尤其喜欢它对 Material Design 3 的详细解读,书中不仅列举了新增的组件和样式,还提供了如何将其应用于现有项目中的具体指导,并且对主题和颜色的系统性调整进行了深入分析,这对于提升应用的视觉体验至关重要。此外,书中对 Android Studio 中一些隐藏的强大调试工具和性能分析工具的介绍,也让我大开眼界。这本书的内容非常扎实,技术点也很前沿,绝对是能够帮助开发者在技术浪潮中保持领先地位的利器。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.cndgn.com All Rights Reserved. 新城书站 版权所有