返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:
本店所有商品

  • 醉染图书Android插件化开发指南9787111603368
  • 正版全新
    • 作者: 包建强著 | 包建强编 | 包建强译 | 包建强绘
    • 出版社: 机械工业出版社
    • 出版时间:2018-08-01
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    醉染图书旗舰店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品分类

    商品参数
    • 作者: 包建强著| 包建强编| 包建强译| 包建强绘
    • 出版社:机械工业出版社
    • 出版时间:2018-08-01
    • 版次:1
    • 印次:1
    • 字数:300
    • 页数:330
    • 开本:16开
    • ISBN:9787111603368
    • 版权提供:机械工业出版社
    • 作者:包建强
    • 著:包建强
    • 装帧:平装
    • 印次:1
    • 定价:79.00
    • ISBN:9787111603368
    • 出版社:机械工业出版社
    • 开本:16开
    • 印刷时间:暂无
    • 语种:暂无
    • 出版时间:2018-08-01
    • 页数:330
    • 外部编号:1201743793
    • 版次:1
    • 成品尺寸:暂无

       序一

    序二

    序三

    前言

    部分 预备知识

    章 插件化技术的昨天、今天与明天2

    1.1 插件化技术是什么2

    1.2 为什么需要插件化3

    1.3 插件化技术的历史3

    1.4 插件化技术的用途到底是什么8

    1.5 更好的替代品:React Native8

    1.6 只有中国这么玩吗9

    1.7 四大组件都需要插件化技术吗10

    1.8 双开和虚拟机10

    1.9 从原生页面到HTML 5的过渡11

    1.10 本章小结12

    第2章 Android底层知识13

    2.1 概述13

    2.2 Binder原理14

    . AL原理16

    2.4 AMS20

    2.5 Activity工作原理21

    2.5.1 App是怎么启动的21

    2.5.2 启动App并非那么简单21

    2.6 App内部的页面跳转32

    2.7 Context家族史34

    2.8 Service工作原理36

    2.8.1 在新进程启动Service36

    2.8.2 启动同一进程的Service39

    2.8.3 在同一进程绑定Service39

    2.9 BroadcastReceiver工作原理41

    2.9.1 注册过程43

    2.9.2 发送广播的流程44

    2.9.3 广播的种类45

    2.10 ContentProvider工作原理46

    2.10.1 ContentProvider的本质49

    2.10.2 匿名共享内存(ASM)49

    2.10.3 ContentProvider与AMS的通信流程50

    2.11 MApp安装过程52

    2.11.1 PMS简介52

    2.11.2 App的安装流程52

    2.11.3 PackageParser53

    2.11.4 ActivityThread与PackageManager54

    2.12 ClassLoader家族史55

    2.13 双亲委托57

    2.14 MultiDex57

    2.15 实现一个音乐播放器App59

    2.15.1 基于两个Receiver的音乐播放器59

    2.15.2 基于一个Receiver的音乐播放器63

    2.16 本章小结68

    第3章 反70

    3.1 基本反技术70

    3.1.1 根据一个字符串得到一个类70

    3.1.2 获取类的成员71

    3.1.3 对泛型类的反75

    3.2 jOOR77

    3.2.1 根据一个字符串得到一个类78

    3.2.2 获取类的成员78

    3.. 对泛型类的反79

    3.3 对基本反语法的封装80

    3.3.1 反出个构造函数81

    3.3.2 调用实例方法81

    3.3.3 调用静态方法82

    3.3.4 获取并设置一个字段的值82

    3.3.5 对泛型类的处理83

    3.4 对反的进步封装84

    3.5 本章小结88

    第4章 代理模式89

    4.1 概述89

    4.1.1 远程代理(AL)90

    4.1.2 保护代理(权限控制)92

    4.1.3 虚代理(图片占位)92

    4.1.4 协作开发(Mock Class)92

    4.1.5 给生活加点料(记日志)93

    4.2 静态代理和动态代理94

    4.3 对AMN的Hook95

    4.4 对PMS的Hook97

    4.5 本章小结98

    第5章 对startActivity方法进行Hook99

    5.1 startActivity方法的两种形式99

    5.2 对Activity的startActivity方法进行Hook100

    5.2.1 方案1:重写Activity的startActivityForResult方法102

    5.2.2 方案2:对Activity的mInstrumentation字段进行Hook102

    5.. 方案3:对AMN的getDefault方法进行Hook104

    5.2.4 方案4:对H类的mCallback字段进行Hook107

    5.2.5 方案5:再次对Instrumentation字段进行Hook109

    5.3 对Context的startActivity方法进行Hook111

    5.3.1 方案6:对ActivityThread的mInstrumentation字段进行Hook111

    5.3.2 对AMN的getDafault方法进行Hook是一劳永逸的113

    5.4 启动没有在AndroidManifest中声明的Activity113

    5.4.1 “欺骗AMS”的策略分析114

    5.4.2 Hook的上半场115

    5.4.3 Hook的下半场:对H类的mCallback字段进行Hook118

    5.4.4 Hook的下半场:对ActivityThread的mInstrumentation字段进行Hook119

    5.4.5 “欺骗AMS”的弊端121

    5.5 本章小结121

    第二部分 解决方案

    第6章 插件化技术基础知识124

    6.1 加载外部的dex124

    6.2 面向接口编程126

    6.3 插件的瘦身129

    6.4 对插件进行代码调试131

    6.5 Application的插件化解决方案133

    6.6 本章小结134

    第7章 资源初探135

    7.1 资源加载机制135

    7.1.1 资源分类135

    7.1.2 剪不断理还乱:Resources和AssetManager136

    7.2 资源的插件化解决方案137

    7.3 换肤141

    7.4 殊途同归:另一种换肤方式149

    7.5 本章小结149

    第8章 简单的插件化解决方案150

    8.1 在AndroidManifest中声明插件中的组件150

    8.2 宿主App加载插件中的类151

    8.3 启动插件Service152

    8.4 加载插件中的资源152

    8.5 本章小结154

    第9章 Activity的插件化解决方案155

    9.1 启动没有在AndroidManifest中声明的插件Activity155

    9.2 基于动态替换的Activity插件化解决方案159

    9.2.1 Android启动Activity的原理分析159

    9.2.2 故意命中缓存160

    9.. 加载插件中类的方案1:为每个插件创建一个ClassLoader164

    9.2.4 为了圆一个谎言而编造更多的谎言164

    9.3 加载插件中类的方案2:合并多个dex166

    9.4 为Activity解决资源问题169

    9.5 对LaunchMode的支持169

    9.6 加载插件中类的方案3:修改App原生的ClassLoader172

    9.7 本章小结174

    0章 Service的插件化解决方案175

    10.1 Android界的荀彧和荀攸:Service和Activity175

    10.2 预先占位176

    10.3 startService的解决方案178

    10.4 bindService的解决方案183

    10.5 本章小结185

    1章 BroadcastReceiver的插件化解决方案186

    ……

    包建强,于复旦大学数学系。先后在多家互联网公司担任无线部门技术总监。在And roid、iOS、WP等多门无线技术中跋涉过,在App的项目管理上也有多年的实践经验。他是微软2008年MVP。

      

      

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购