| 商品名称: 深入剖析 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新特性》的目录,我感觉我的技术雷达瞬间被点亮了。作为一个在 Android 开发领域摸爬滚打多年的工程师,我深知“新特性”并非只是简单的 API 叠加,它往往代表着 Android 平台在设计理念、性能优化、用户体验等方面的重大突破。这本书的书名“深入剖析”四字,直接戳中了我的痛点,我渴望了解的不仅仅是新特性的表面用法,更重要的是其背后的设计哲学、实现原理,以及在实际开发中可能遇到的坑和解决之道。我特别想知道,书中是如何处理那些跨版本兼容性问题,或者新特性引入后可能引发的性能瓶颈。例如,对于 Jetpack Compose 这样的声明式 UI 框架,书中是否会深入讲解其背后的渲染机制,以及如何结合传统的 View 系统进行高效的交互?又或者,对于那些涉及底层系统调用的新 API,它能否提供清晰的调用链和源码分析?我期待这本书能成为我深入理解 Android 最新技术栈的“秘密武器”,帮助我写出更健壮、更高效、更具创新性的应用。
评分作为一个对 Android 技术保持高度敏感的开发者,我一直在寻找一本能够真正帮助我理解和掌握 Android 最新特性的深度学习资料。《深入剖析 Android新特性》这个书名,恰恰是我所期待的。我尤其看重“深入剖析”这个词,它意味着这本书不仅仅会停留在 API 的介绍上,而是会去挖掘这些新特性背后的技术原理、设计思想,甚至是它们是如何与 Android 操作系统其他部分协同工作的。我希望这本书能为我揭示那些隐藏在华丽 API 之下的复杂机制,比如新的后台任务调度机制如何优化电池续航,新的图形渲染技术如何提升 UI 流畅度,或者新的安全特性如何保护用户隐私。对于那些开发者们经常遇到的性能问题和兼容性挑战,我更期待书中能提供基于新特性来解决问题的思路和方法。这本书的出现,让我看到了在快速迭代的 Android 生态中,能够保持技术领先性的希望,它将是我系统学习和深入理解 Android 最新技术的重要参考。
评分最近刚入手了这本《深入剖析 Android新特性》,迫不及待地翻了几页,就感觉找到了宝藏!作为一个长期混迹于 Android 开发社区的老兵,我深知“新特性”这个词背后隐藏的巨大工作量——每次系统更新,那些看似简单的 API 背后,往往牵扯着复杂的逻辑和大量的底层改动。市面上很多书籍要么过于浅显,只罗列 API,要么过于晦涩,让人望而却步。这本书的命名就很精准地抓住了痛点,“深入剖析”这四个字,让我看到了它区别于其他同类书籍的决心。我特别关注它在讲解具体新特性时,是否会涉及到它诞生的背景、解决了什么实际问题,以及在不同版本的 Android 系统中它的演进过程。我期望这本书不仅能教会我“怎么用”,更能让我明白“为什么这么用”,甚至在面对疑难杂症时,能够根据新特性的原理找到解决方案。我希望它能像一位经验丰富的前辈,在我迷茫时指点迷津,让我少走弯路,在 Android 新特性的海洋中稳健前行。
评分我拿到《深入剖析 Android新特性》这本书时,心中涌起了既有期待又有些许忐忑的情绪。期待是因为,作为一名长期与 Android 为伴的开发者,我深知每一次系统更新都带来无数令人兴奋的新功能和性能提升,而“深入剖析”这个词,预示着本书不会流于表面,而是要直击核心,挖掘出新特性背后的技术细节和设计哲学。我渴望看到作者如何解读那些抽象的概念,如何将复杂的底层原理用清晰易懂的方式呈现出来,例如,对于新的协程支持,书中是否会深入讲解其与传统异步处理方式的对比,以及在实际应用中如何有效地利用它们来提升应用响应速度和资源利用率?又或者,对于那些在 UI 层面带来革命性改变的新特性,比如 Jetpack Compose,书中是否会提供详细的组件生命周期分析、状态管理最佳实践,以及与其他库的集成方案?我希望这本书能成为我打开 Android 新世界的一把钥匙,它不仅能帮助我快速上手,更能让我从根本上理解这些新特性的价值所在,从而在我的开发实践中游刃有余,创造出更优秀的应用。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.cndgn.com All Rights Reserved. 新城书站 版权所有