购物车中还没有商品,赶紧选购吧!
条形条码:
Android进阶解密
商品价格
降价通知
高级VIP可享超值优惠价 立即开通
市 场 价
累计评价0
/
累计销量0
手机购买
商品二维码
配送
至
服务
发货并提供售后服务。
可用积分
0
数量
库存   个
温馨提示
平台自营
5.00
商品评价 5
服务态度 5
发货速度 5

微信扫码查看移动端店铺

暂无联系方式
  • 商品详情
  • 规格参数
手机购买
商品二维码
加入购物车
价格:
数量:
库存   个

商品详情

商品名称:Android进阶解密
商品编号 :637862077908
店铺:
重量:0.000千克
上架时间:2021-06-01 10:58:00
ISBN编号 :9787121348389
书名 :Android进阶解密,Android进阶解密
作者 :刘望舒
出版社名称 :电子工业出版社
定价 :99.00元
开本 :16开
是否是套装 :否

更多参数>>

  • 商品名称: Android进阶解密
  • 作者: 刘望舒
  • 定价: 99.0
  • ISBN号: 9787121348389
  • 出版社: 电子工业出版社
  • 印次: 1
  • 开本: 16开
  • 页数: 453
  • 出版时间: 2018-10-01
  • 印刷时间: 2018-10-01
  • 版次: 1

刘望舒著的《Android进阶解密》是一本Android进阶书籍,主要针对Android 8.0系统源码并结合应用开发相关知识进行介绍。本书共分为17章,从3个方面来组织内容。 第1方面介绍Android应用开发所需要掌握的系统源码知识,第二方面介绍JNI、ClassLoader、Java虚拟机、DVM&ART虚拟机和Hook等技术,第三方面介绍热修复原理、插件化原理、绘制优化和内存优化等与应用开发相关的知识点。3个方面有所关联并形成一个知识体系,从而使Android开发者能通过阅读本书达到融会贯通的目的。

本书适合有一定基础的Android应用开发工程师、Android系统开发工程师和对Android系统源码感兴趣的读者阅读。

刘望舒,Android高级工程师,拥有多年开发和技术管理经验,对Android框架层及应用层开发有着深入的理解。热爱技术和分享,连续6年在CSDN发表技术文章,有多篇文章广受好评,并被授予CSDN博客专家称号。此外,他还活跃在简书和掘金。曾在多家知名公司从事Android开发。

独立博客:

http://fiuwangshu.crl

CSDN博客:

http://blog.csdn.net/itachi85

新浪微博:

http://weibo.com/itachi85

微信公众号:刘望舒

第1章    Android系统架构
    1.1    Android系统架构
    1.2    Android系统源码目录
        1.2.1    整体结构
        1.2.2    应用层部分
        1.2.3    应用框架层部分
        1.2.4    C/C++程序库部分
    1.3    源码阅读
        1.3.1    在线阅读
        1.3.2    使用Source Insight
    1.4    本章小结
第2章    Android系统启动
    2.1    init进程启动过程
        2.1.1    引入init进程
        2.1.2    init进程的入口函数
        2.1.3    解析init.rc
        2.1.4    解析Service类型语句
        2.1.5    init启动Zygote
        2.1.6    属性服务
        2.1.7    init进程启动总结
    2.2    Zygote进程启动过程
        2.2.1    Zygote概述
        2.2.2    Zygote启动脚本
        2.2.3    Zygote进程启动过程介绍
        2.2.4    Zygote进程启动总结
    2.3    SystemServer处理过程
        2.3.1    Zygote处理SystemServer进程
        2.3.2    解析SystemServer进程
        2.3.3    SystemServer进程总结
    2.4    Launcher启动过程
        2.4.1    Launcher概述
        2.4.2    Launcher启动过程介绍
        2.4.3    Launcher中应用图标显示过程
    2.5    Android系统启动流程
    2.6    本章小结
第3章    应用程序进程启动过程
    3.1    应用程序进程简介
    3.2    应用程序进程启动过程介绍
        3.2.1    AMS发送启动应用程序进程请求
        3.2.2    Zygote接收请求并创建应用程序进程
    3.3    Binder线程池启动过程
    3.4    消息循环创建过程
    3.5    本章小结
第4章    四大组件的工作过程
    4.1    根Activity的启动过程
        4.1.1    Launcher请求AMS过程
        4.1.2    AMS到ApplicationThread的调用过程
        4.1.3    ActivityThread启动Activity的过程
        4.1.4    根Activity启动过程中涉及的进程
    4.2    Service的启动过程
        4.2.1    ContextImpl到AMS的调用过程
        4.2.2    ActivityThread启动Service
    4.3    Service的绑定过程
        4.3.1    ContextImpl到AMS的调用过程
        4.3.2    Service的绑定过程
    4.4    广播的注册、发送和接收过程
        4.4.1    广播的注册过程
        4.4.2    广播的发送和接收过程
    4.5    Content Provider的启动过程
        4.5.1    query方法到AMS的调用过程
        4.5.2    AMS启动Content Provider的过程
    4.6    本章小结
第5章    理解上下文Context
    5.1    Context的关联类
    5.2    Application Context的创建过程
    5.3    Application Context的获取过程
    5.4    Activity的Context创建过程
    5.5    Service的Context创建过程
    5.6    本章小结
第6章    理解ActivityManagerService
    6.1    AMS家族
            6.1.1 Android 7.0    的AMS家族
            6.1.2 Android 8.0    的AMS家族
    6.2    AMS的启动过程
    6.3    AMS与应用程序进程
    6.4    AMS重要的数据结构
        6.4.1    解析ActivityRecord
        6.4.2    解析TaskRecord
        6.4.3    解析ActivityStack
    6.5    Activity栈管理
        6.5.1    Activity任务栈模型
        6.5.2    Launch Mode
        6.5.3    Intent的FLAG
        6.5.4    taskAffinity
    6.6    本章小结
第7章    理解WindowManager
    7.1    Window、WindowManager和WMS
    7.2    WindowManager的关联类
    7.3    Window的属性
        7.3.1    Window的类型和显示次序
        7.3.2    Window的标志
        7.3.3    软键盘相关模式
    7.4    Window的操作
        7.4.1    系统窗口的添加过程
        7.4.2    Activity的添加过程
        7.4.3    Window的更新过程
    7.5    本章小结
第8章    理解WindowManagerService
    8.1    WMS的职责
    8.2    WMS的创建过程
    8.3    WMS的重要成员
    8.4    Window的添加过程(WMS处理部分)
    8.5    Window的删除过程
    8.6    本章小结
第9章    JNI原理
    9.1    系统源码中的JNI
    9.2    MediaRecorder框架中的JNI
        9.2.1    Java Framework层的MediaRecorder
        9.2.2    JNI层的MediaRecorder
        9.2.3    Native方法注册
    9.3    数据类型的转换
        9.3.1    基本数据类型的转换
        9.3.2    引用数据类型的转换
    9.4    方法签名
    9.5    解析JNIEnv
        9.5.1    jfieldID和jmethodID
        9.5.2    使用jfieldID和jmethodID
    9.6    引用类型
        9.6.1    本地引用
        9.6.2    全局引用
        9.6.3    弱全局引用
    9.7    本章小结
第10章    Java虚拟机
    10.1    概述
        10.1.1    Java虚拟机家族
        10.1.2    Java虚拟机执行流程
    10.2    Java虚拟机结构
        10.2.1    Class文件格式
        10.2.2    类的生命周期
        10.2.3    类加载子系统
        10.2.4    运行时数据区域
    10.3    对象的创建
    10.4    对象的堆内存布局
    10.5    oop-klass模型
    10.6    垃圾标记算法
        10.6.1    Java中的引用
        10.6.2    引用计数算法
        10.6.3    根搜索算法
    10.7    Java对象在虚拟机中的生命周期
    10.8    垃圾收集算法
        10.8.1    标记—清除算法
        10.8.2    复制算法
        10.8.3    标记—压缩算法
        10.8.4    分代收集算法
    10.9    本章小结
第11章    Dalvik和ART
    11.1    Dalvik虚拟机
        11.1.1    DVM与JVM的区别
        11.1.2    DVM架构
        11.1.3    DVM的运行时堆
        11.1.4    DVM的GC日志
    11.2    ART虚拟机
        11.2.1    ART与DVM的区别
        11.2.2    ART的运行时堆
        11.2.3    ART的GC日志
    11.3    DVM和ART的诞生
    11.4    本章小结
第12章    理解ClassLoader
    12.1    Java中的ClassLoader
        12.1.1    ClassLoader的类型
        12.1.2    ClassLoader的继承关系
        12.1.3    双亲委托模式
        12.1.4    自定义ClassLoader
    12.2    Android中的ClassLoader
        12.2.1    ClassLoader的类型
        12.2.2    ClassLoader的继承关系
        12.2.3    ClassLoader的加载过程
        12.2.4    BootClassLoader的创建
        12.2.5    PathClassLoader的创建
    12.3    本章小结
第13章    热修复原理
    13.1    热修复的产生
    13.2    热修复框架的种类和对比
    13.3    资源修复
        13.3.1    Instant Run概述
        13.3.2    Instant Run的资源修复
    13.4    代码修复
        13.4.1    类加载方案
        13.4.2    底层替换方案
        13.4.3    Instant Run方案
    13.5    动态链接库的修复
        13.5.1    System的load和loadLibarary方法
        13.5.2    nativeLoad方法分析
    13.6    本章小结
第14章    Hook技术
    14.1    Hook技术概述
    14.2    Hook技术分类
    14.3    代理模式
        14.3.1    代理模式简单实现
        14.3.2    动态代理的简单实现
    14.4    Hook startActivity方法
        14.4.1    Hook Activity的startActivity方法
        14.4.2    Hook Context的startActivity方法
        14.4.3    Hook startActivity总结
    14.5    本章小结
第15章    插件化原理
    15.1    动态加载技术
    15.2    插件化的产生
        15.2.1    应用开发的痛点和瓶颈
        15.2.2    插件化思想
        15.2.3    插件化定义
    15.3    插件化框架对比
    15.4    Activity插件化
        15.4.1    Activity的启动过程回顾
        15.4.2    Hook IActivityManager方案实现
        15.4.3    Hook Instrumentation方案实现
        15.4.4    总结
    15.5    Service插件化
        15.5.1    插件化方面Service与Activity的不同
        15.5.2    代理分发实现
    15.6    ContentProvider插件化
        15.6.1    ContentProvider的启动过程回顾
        15.6.2    VirtualApk的实现
    15.7    BroadcastReceiver的插件化
        15.7.1    广播插件化思路
        15.7.2    VirtualApk的实现
    15.8    资源的插件化
        15.8.1    系统资源加载
        15.8.2    VirtualApk实现
    15.9    so的插件化
    15.10    本章小结
第16章    绘制优化
    16.1    绘制性能分析
        16.1.1    绘制原理
        16.1.2    Profile GPU Rendering
        16.1.3    Systrace
        16.1.4    Traceview
    16.2    布局优化
        16.2.1    布局优化工具
        16.2.2    布局优化方法
        16.2.3    避免GPU过度绘制
    16.3    本章小结
第17章    内存优化
    17.1    避免可控的内存泄漏
        17.1.1    什么是内存泄漏
        17.1.2    内存泄漏的场景
    17.2    Memory Monitor
        17.2.1    使用Memory Monitor
        17.2.2    大内存申请与GC
        17.2.3    内存抖动
    17.3    Allocation Tracker
        17.3.1    使用Allocation Tracker
        17.3.2    alloc文件分析
    17.4    Heap Dump
        17.4.1    使用Heap Dump
        17.4.2    检测内存泄漏
    17.5    内存分析工具MAT
        17.5.1    生成hprof文件
        17.5.2    MAT分析hprof文件
    17.6    LeakCanary
        17.6.1    使用LeakCanary
        17.6.2    LeakCanary应用举例
    17.7    本章小结

对比栏

1

您还可以继续添加

2

您还可以继续添加

3

您还可以继续添加

4

您还可以继续添加