当前位置:主页 > 计算机电子书 > 移动开发 > Android pdf电子书下载
超清完整反馈 / 投诉

最强Android书:架构大剖析 PDF 超清完整版

2023-08-13 16:01:22 类别:Android

  • 更新:2023-08-13 16:01:22
  • 大小:187.2 MB
  • 出版:电子工业出版社
  • 作者:Jonathan
  • 类别:Android
  • 格式:PDF

网盘下载 本地下载

扫二维码手机浏览

  • 码农点评:《最强Android书:架构大剖析》是一本非常优秀的Android技术书籍。该书通过深入剖析Android架构,不仅能帮助读者深入了解Android技术内幕,还能在不需要源码的情况下彻底掌握Android开发技术。书中采用全程实验直接指导的方式,通过层层拆解的方式详细讲解了Android的各个核心要素。更令人称奇的是,本书还持续更新中,确保读者掌握的知识始终与最新的Android技术保持同步。这本书不仅受到了美国中情局的青睐,还被国内部分手机厂商作为内部员工学习的教材。无论是对于Android开发初学者还是专业开发者来说,这本书都是一本不可多得的宝典。
  • 资源介绍

    给网友朋友们带来一篇Android相关的 PDF电子书资料,由电子工业出版社出版,作者是Jonathan,介绍了关于Android、架构方面,格式为PDF,资源大小187.2 MB,目前在Android类资源综合评分为:7.7分。

    最强Android书:架构大剖析

    最强Android书:架构大剖析 电子书封面

    读者评价

    只能大致看了一遍,因为细看真的不怎么看得懂,对作者的深度佩服的五体投地。
    版权归作者所有,任何形式转载请联系作者。
    与传统Android技术书不同的是,本书并不从源码分析入手,而是用实验指导,层层解剖Android架构,无须高深的知识背景,也能深入理解Android的精髓——让人知其所以然,有顿悟之感。
    作者本身潜心钻研操作系统多年,业内资深大牛。对了,他还是名果粉,所以书中有时能看到他对Android和苹果系统的比较评价,很搞笑,性情中人也。
    这本书不同于市面上其他剖析Android内核的书,它对安卓系统的每个模块都有涉猎。比如从介绍启动Bootloader, 然后各个daemon的启动和功能,到framework层各个service介绍,但只是蜻蜓点水。作者把所有的包袱都扔在了第二卷,可以想象第二卷的工作量也够大的了,第二卷目前还没消息。
    书里有几个亮点,一个是提供了小实验,对于不熟悉android内部很多hack工具的人来说,有些命令会让人眼前一亮。
    另一个亮点是作者画图非常精细漂亮,看得出他看代码功力深厚,仅仅几幅图就能把总体逻辑架构干干净净地展现在读者面前。(当然,这也许和作者的职业有关系吧,他作为一个科技咨询公司的CTO,一大业务就是给美国的技术人员上培训课,因此图文并茂讲述倒是颇有意思。)
    看得出作者的技术转型,从Linux的hacker转攻Android,并且很快将经验移植到android中并很快成了领域内的大牛。其中用很多Linux的工具和思维来分析对比android,非常有趣,可以从中横向对比两者系统的异同。

    内容介绍

    《最强Android书:架构大剖析》通过实验而不是源码,将Android 系统层层拆解,令读者深刻透彻地掌握Android 系统的内部技术:以init 进程为切入点详细阐述了Android 的启动过程和关键服务;从Android 作为资源协调者和服务提供者的角度,重点分析了servicemanager 和system_server 这两个进程。同时,作者比较了Linux 与Android 系统的区别,并对Android 系统的安全性做了深入的阐述。
    《最强Android书:架构大剖析》采用了大量的图表示例和实验,表达新颖清晰,让读者能直观地掌握Android 的技术精髓。
    《最强Android书:架构大剖析》适合广大移动开发者及对Android 系统感兴趣的人员阅读。

    目录

    • 关于本书  XIV
    • 第1 章 Android 体系结构的变革之路  1
    • 1.1 Android 系统版本的历史变迁  2
    • Froyo(冻酸奶)  3
    • Gingerbread(姜饼人)  3
    • Honeycomb(蜂巢)  4
    • Ice Cream Sandwich(冰激凌三明治)  5
    • JellyBean(果冻豆)  5
    • KitKat(奇巧)  6
    • Lollipop(棒棒糖)  7
    • Marshmallow(棉花糖)  8
    • Nougat(牛轧糖)  9
    • 1.2 Android 与Linux  11
    • 并非另一个Linux 发布版本  11
    • 然后Android 就登场了  12
    • 与Linux 的异同  13
    • Android 的框架  15
    • Dalvik 虚拟机  18
    • JNI  19
    • 原生二进制可执行文件  20
    • Bionic  22
    • Android 的原生库  25
    • 源自其他项目的原生库  27
    • 硬件抽象层  28
    • Linux 内核  29
    • 1.3 Android 的衍生产品  30
    • 谷歌官方的衍生产品  30
    • 非谷歌官方的衍生品  33
    • 1.4 对前方道路的思考  36
    • 兼容64 位  36
    • ART(Android 运行时)  37
    • 多画面  38
    • 把Android 用作台式机操作系统  38
    • Android 和ARA 项目  39
    • Brillo  40
    • 本章小结  40
    • 参考文献  41
    • 第2 章 Android 的分区和文件系统  43
    • 2.1 分区架构  43
    • 需要许多单独分区的原因  44
    • GUID 分区表  45
    • 闪存(Flash Storage)系统  46
    • 文件系统  46
    • Android 设备中的分区  49
    • 2.2 Android 文件系统中存储的内容  53
    • root 文件系统  53
    • /system 分区  54
    • /data 分区  65
    • /cache 分区  71
    • /vendor 目录  72
    • SD 卡  73
    • 2.3 受保护的文件系统  74
    • OBB:Opaque Binary Blobs  74
    • ASec:Android 安全存储(Android Secure Storage)  76
    • 2.4 Linux 伪文件系统  78
    • cgroupfs  78
    • debugfs  79
    • functionfs(/dev/usb-ffs/adb)  80
    • procfs(/proc)  81
    • pstore(/sys/fs/pstore)  81
    • selinuxfs(/sys/fs/selinux)  82
    • sysfs(/sys)  83
    • 本章小结  84
    • 参考文献  84
    • 第3 章 Android 的启动、备份和重置  86
    • 3.1 Android 系统镜像  87
    • Boot Loader  89
    • Boot 镜像  93
    • 内核  95
    • RAM disk  97
    • /System 和/Data 分区镜像  99
    • 3.2 启动过程  101
    • 固件启动过程  101
    • 内核启动过程  105
    • 3.3 关机和重启  109
    • 3.4 应用的备份和恢复  112
    • 命令行工具  113
    • 本地备份  114
    • 监视备份操作  117
    • 3.5 系统重置(recovery)和升级  119
    • OTA(Over-The-Air)升级包  121
    • 制作你自己的ROM  124
    • 制作ROM 时可用的网上资源  128
    • 本章小结  130
    • 参考文献  130
    • 第4 章 init  132
    • 4.1 init 的角色和任务  132
    • 系统属性  134
    • .rc 文件  140
    • 总结:init 的执行流程  146
    • 4.2 init 和USB  150
    • 4.3 init 的其他角色  152
    • ueventd  153
    • watchdogd  154
    • 本章小结  154
    • XIV ┃ 最强Android 书:架构大剖析
    • 本章讨论所涉及的文件  155
    • 第5 章 Android 的守护进程  156
    • 5.1 core 类中的服务  156
    • adbd  156
    • servicemanager  160
    • healthd  161
    • lmkd(Android L)  165
    • logd(Android L)  168
    • vold  173
    • 5.2 网络相关服务  182
    • netd  182
    • mdnsd  187
    • mtpd  187
    • racoon  188
    • rild  189
    • 5.3 图形及多媒体服务  190
    • surfaceflinger  190
    • bootanimation  192
    • mediaserver  194
    • drmserver  196
    • 5.4 其他服务  197
    • installd  197
    • keystore  200
    • debuggerd[64]  204
    • gatekeeper(Android M)  207
    • sdcard  208
    • Zygote[64]  211
    • 本章小结  214
    • 本章讨论涉及的文件  214
    • 参考文献  215
    • 第6 章 框架服务的架构  216
    • 6.1 再探servicemanager  217
    • 6.2 服务调用的模式  222
    • 优点和缺点  224
    • 序列化和Android 接口定义语言(AIDL)  225
    • 6.3 Binder  228
    • 简明历史  228
    • 那么,Binder 究竟是什么  229
    • 使用Binder  230
    • 分析Binder 的当前使用情况  231
    • 6.4 system_server  232
    • 启动及执行流程  232
    • 修改启动时的行为  234
    • 本章小结  237
    • 本章讨论涉及的文件  237
    • 参考文献  237
    • 第7章从Linux 角度看Android  238
    • 7.1 重温/proc  239
    • 符号链接:cwd、exe 和root  240
    • fd  243
    • fdinfo  245
    • status  247
    • 7.2 用户模式内存管理  254
    • 虚拟内存的分类和生命周期  254
    • 内存的相关术语  258
    • 内存不足时的应对方案  266
    • 7.3 跟踪系统调用  269
    • toolbox ps 工具  269
    • wchan 和syscall 文件  270
    • strace 工具  271
    • 本章小结  272
    • 参考文献  272
    • 第8 章 Android 安全性  274
    • 8.1 移动安全威胁建模  275
    • 攻击向量  275
    • 攻击之道  278
    • 8.2 Linux 层上的安全措施  281
    • Android 使用Linux 权限的方式  281
    • Linux 权能  289
    • SELinux  294
    • 其他值得注意的特性  301
    • 8.3 Dalvik 层上的安全措施  305
    • Dalvik 层上的权限  305
    • Dalvik 代码签名  310
    • 8.4 用户层上的安全措施  312
    • 锁屏机制  312
    • 支持多用户  316
    • 密钥管理  318
    • 证书管理  318
    • 密钥和私钥管理  322
    • 8.5 存储安全  323
    • 加密/data 分区  323
    • 基于文件的加密(Nougat 7.1)  326
    • Direct Boot (Nougat 的新特性)  326
    • 启动过程中加强验证  327
    • 8.6 Root Android 设备  328
    • 在设备启动环节中root  329
    • 利用安全漏洞root  331
    • Root 对安全的影响  332
    • 本章小结  334
    • 参考文献  334

    以上就是本次关于书籍资源的介绍和部分内容,我们还整理了以往更新的其它相关电子书资源内容,可以在下方直接下载,关于相关的资源我们在下方做了关联展示,需要的朋友们也可以参考下。


    下载地址

    下载地址:网盘下载

    学习心得

    4小时51分钟前回答

    js判断手机系统是android还是ios

    话不多说,请看代码: script type="text/javascript"var u = navigator.userAgent;var isAndroid = u.indexOf('Android') -1 || u.indexOf('Adr') -1; //android终端var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端alert('是否是Android:'+isAndroid);alert('是否是iOS:'+isiOS);/script 以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持码农之家! ……

    1小时9分钟前回答

    通过Python 获取Android设备信息的轻量级框架

    今天跟大家分享一下,如何通过Python实现一个轻量级的库来获取电脑上连接的Android设备信息,为什么说轻量呢因为整个库也就4KB,相比其他诸如Appetizer这样动辄就8MB多的库要轻很多,而且也基本满足项目中的需求。 这个库只有一个文件,通过封装Android的ADB命令实现,返回的是一个包含所有设备信息的标准json格式的列表方便解析,下面简单介绍一下: 检查环境变量 # 判断是否设……

    欢迎发表评论:

    联系我们

    邮件联系:3522365@qq.com

    QQ联系:3522365