发表于: 2016-09-12 23:38:12
0 737
1:ZygoteInit调用startSystemServer函数通过fork创建 system_server进程
2:system_server 最后调用 handleSystemServerProcess 完成使命。
3:handleSystemServerProcess 抛出自定义异常,在异常函数处理中 调用main 函数进入 java 层。
4:main 函数中加载 libandroid_servers.so 调用nativeInit 函数初始化 native层 service
5: 创建 Systemthread 类 来初始化 java层的各种 service
6:system_server 进程 最后进入 Binder 通讯系统,给应用层序和系统提供各种服务需求。
关于handler 底层的实现 牵扯到了 binder 又牵扯到了底层源码,这儿总结个大概。
评论