欢迎您来到懒之才-站长的分享平台!   学会偷懒,并懒出境界是提高工作效率最有效的方法!
首页 > 教程文档 > APP开发 > ANDROID框架揭秘[PDF][43.52MB]

ANDROID框架揭秘[PDF][43.52MB]

2019-06-25 554 收藏 0 赞一个 0 真差劲 0 去评论 去下载

内容简介

《Android框架揭秘》通过对Android系统源代码的分析,主要介绍Android框架的初始化过程及主要组件的工作原理。作者直接分析和整理了Android框架的主要源代码,并详细讲解了理解框架工作原理所需的各种基础知识和构成实际Android平台骨干的服务框架。其中的主要内容包括:通过启动程序了解Android框架的概要,移植Android以及如何开发适合各种机器的应用程序,分析Android框架所需的基础知识,JNI(Java Native Interface)与Binder基础知识,Zygote、Service Manager、Service Server等Android核心组件,Android服务框架的结构与理解,通过Camera Service、Activity Manager Service等服务分析实际的Android服务等。  

《Android框架揭秘》不仅可以供具备一定开发经验的Android开发人员参考阅读,也可作为Android开发初学者的Android框架入门教材使用。

目录

第1章 Android Framework概要 1
1.1 Android源代码组成 2
1.2 通过启动过程分析Android Framework 3
第2章 搭建Android开发环境 7
2.1 主机环境构成 7
2.1.1 安装VirtualBox 7
2.1.2 安装Ubuntu 8
2.2 搭建Android平台编译环境 9
2.2.1 编译工具 10
2.2.2 安装Repo 11
2.2.3 下载Android源代码 11
2.2.4 编译Android源代码 12
2.3 搭建Android SDK开发环境 13
2.3.1 下载、安装Eclipse 13
2.3.2 下载Android SDK starter 13
2.3.3 安装ADT插件 14
2.3.4 设置Android SDK路径 16
2.3.5 安装Android SDK 16
2.4 开发Android应用程序 18
2.5 应用程序Framework源码级别调试 21
2.5.1 加载应用程序Framework源 21
2.5.2 调试HelloWorld Framework(源码级) 24
2.6 小结 27
第3章 init进程 29
3.1 init进程运行过程 29
3.2 init进程源码分析 31
3.3 init.rc脚本文件分析与执行 40
3.3.1 动作列表(Action List) 41
3.3.2 服务列表(Service List) 43
3.3.3 init.rc文件分析函数 44
3.3.4 动作列表与服务列表的运行 48
3.4 创建设备节点文件 52
3.4.1 创建静态设备节点 52
3.4.2 动态设备感知 57
3.5 进程的终止与再启动 58
3.6 属性服务 62
3.6.1 属性初始化 63
3.6.2 属性变更请求处理 65
3.7 小结 67
第4章 JNI与NDK 69
4.1 Android与JNI 69
4.2 JNI的基本原理 72
4.2.1 在Java中调用C库函数 72
4.2.2 小结 83
4.3 调用JNI函数 84
4.3.1 调用JNI函数的示例程序结构 84
4.3.2 Java层代码(JniFuncMain.java) 85
4.3.3 分析JNI本地函数代码 87
4.3.4 编译及运行结果 101
4.3.5 在Android中的应用举例 102
4.4 在C程序中运行Java类 102
4.4.1 Invocation API应用示例 103
4.4.2 编译及运行 108
4.4.3 Invocation API在Android中的应用举例:Zygote进程 110
4.5 直接注册JNI本地函数 110
4.5.1 加载本地库时,注册JNI本地函数 111
4.5.2 Android中的应用举例 115
4.6 使用Android NDK开发 122
4.6.1 安装Android NDK 123
4.6.2 使用Android NDK开发步骤 127
4.6.3 小结 136
第5章 Zygote 137
5.1 Zygote是什么 137
5.2 由app_process运行ZygoteInit class 142
5.2.1 生成AppRuntime对象 143
5.2.2 调用AppRuntime对象 144
5.2.3 创建Dalvik虚拟机 145
5.2.4 运行ZygoteInit类 146
5.3 ZygoteInit类的功能 147
5.3.1 绑定/dev/socket/zygote套接字 149
5.3.2 加载应用程序Framework中的类与平台资源 150
5.3.3 运行SystemServer 155
5.3.4 运行新Android应用程序 158
第6章 Android服务概要 163
6.1 示例程序:理解Android服务的运行 163
6.2 Android服务的种类 166
6.3 Android应用程序服务 168
6.4 Android系统服务 182
6.5 运行系统服务 185
6.5.1 分析媒体服务器(Media Server)的运行代码 186
6.5.2 分析系统服务器(System Server)的运行代码 188
6.6 Android Service Framework、Binder Driver概要及相关术语 192
第7章 Android Binder IPC 197
7.1 Linux内存空间与Binder Driver 197
7.2 Android Binder Model 199
7.2.1 Binder IPC数据传递 201
7.2.2 Binder IPC数据流 202
7.2.3 Binder协议(Binder Protocol) 204
7.2.4 RPC代码与RPC数据 206
7.2.5 Binder寻址(Binder Addressing) 206
7.3 Android Binder Driver分析 209
7.3.1 从进程的角度看服务的使用 210
7.3.2 从Binder Driver角度看服务的使用 214
7.3.3 Binder Driver函数分析 219
7.4 Context Manager 251
7.5 小结 256
第8章 Android Service Framework 257
8.1 服务框架(Service Framework) 257
8.2 服务框架(Service Framework)的构成 259
8.2.1 各层构成元素的配置 260
8.2.2 各层构成元素间的相互作用 261
8.2.3 类的结构 264
8.3 运行机制 266
8.3.1 服务接口 267
8.3.2 服务 273
8.3.3 服务代理(Service Proxy) 276
8.3.4 Binder IPC处理 280
8.4 本地服务管理器(Native Service Manager) 282
8.4.1 Service Manager概要 282
8.4.2 Service Manager类 284
8.4.3 Service Manager的运行 286
8.5 编写本地服务 314
8.5.1 设计HelloWorld系统服务 314
8.5.2 HelloWorld服务接口 315
8.5.3 HelloWorld服务 316
8.5.4 HelloWorld服务代理 319
8.5.5 运行HelloWorld服务 320
8.6 小结 325
第9章 本地系统服务(Native System Service)分析 327
9.1 相机服务(Cameral Service) 327
9.2 相机应用程序 328
9.3 相机服务框架(Camera Service Framework) 331
9.3.1 相机服务框架层次结构 331
9.3.2 相机服务框架类 333
9.4 相机服务框架的运行 334
9.4.1 初始化相机服务 334
9.4.2 连接相机服务 335
9.4.3 相机服务连接过程分析 337
9.4.4 相机设置与控制 340
9.4.5 相机设置与控制分析 341
9.4.6 相机事件处理 342
9.4.7 相机事件处理分析 343
9.5 小结 345
第10章 Java服务框架(Java Service Framework) 347
10.1 Java服务框架(Java Service Framework) 347
10.1.1 Java服务框架的层次结构 348
10.1.2 Java服务框架中各个类间的相互作用 351
10.2 运行机制 354
10.2.1 Java服务框架初始化 355
10.2.2 Binder 355
10.2.3 BinderProxy 361
10.2.4 Parcel 364
10.3 Java系统服务的实现 367
10.3.1 闹钟服务(Alarm Manager Service)分析 368
10.3.2 编写HelloWorldService系统服务 372
10.3.3 使用HelloWorldService系统服务 375
10.3.4 编译HelloWorldService系统服务 378
10.4 Java Service Manager 380
10.4.1 Java Service Manager简介 380
10.4.2 BinderInternal 381
10.4.3 Java Service Manager的运行实例 383
10.5 使用AIDL生成服务代理与服务Stub 389
10.5.1 在AIDL文件中定义服务接口 390
10.5.2 使用AIDL编译器,生成服务接口、服务Stub以及服务代理 391
10.5.3 继承Stub类创建服务 392
10.5.4 服务接口的调用 393
10.6 小结 394
第11章 Java系统服务运行分析 395
11.1 Activity Manager Service 395
11.2 Activity Manager Service创建服务分析 397
11.2.1 Controller Activity-调用startService()方法 398
11.2.2 Activity Manager Service的startService()方法的调用过程(使用Binder RPC) 399
11.2.3 Activity Manager Service——运行startService() Stub方法 405
11.2.4 运行ActivityThread类的main() 方法 409
11.2.5 Activity Manager Service——attachApplication() Stub方法 414
11.3 小结 421
附录 AIDL语法 423

文档截图

QQ截图20190625094539.jpg

ANDROID框架揭秘[PDF][43.52MB]

一、推荐使用迅雷或快车等多线程下载软件下载本站资源。

二、未登录会员无法下载,登录后可获得更多便利功能,若未注册,请先注册。

三、如果服务器暂不能下载请稍后重试!总是不能下载,请点我报错 ,谢谢合作!

四、本站大部分资源是网上搜集或私下交流学习之用,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!本站将不对任何资源负法律责任.如果您发现本站有部分资源侵害了您的权益,请速与我们联系,我们将尽快处理.

五、如有其他问题,请加网站设计交流群(点击这里查看交流群 )进行交流。

六、如需转载本站资源,请注明转载来自并附带链接

七、本站部分资源为加密压缩文件,统一解压密码为:www.aizhanzhe.com

下载地址
大家评论