1. Location服务注册
第一个注册是在 SystemServer 中将 location 服务注册到 ServiceManager中去;第二个注册是在 SystemServiceRegistry 中服务的注册。
注册1:将 Location 服务注册到 Binder 中去,客户端可以通过 Binder 拿到此服务的代理。
注册2: Context.LOCATION_SERVICE 将 LocationManager 和 LocationManagerService 绑定起来,API 接口 LocationManager 中就是通过这里的注册拿到 LocationManagerService 服务。
2. 服务被拉起的过程
init 进程通过解析 zygote rc文件,启动了 zygote 进程,继而 zygote 进程又 fork 出 SystemServer 进程,去完成系统服务的创建初始化工作,像系统重要服务 AMS、PMS、WMS等都是这个阶段完成的,最后 SystemServer 启动 桌面应用 Launcher,把 Android 的桌面显示出来。
Android 启动流程 bootloader -> kernel -> init -> zygote -> systemserver -> launcher
标签:服务,模块,LocationManagerService,zygote,GNSS,注册,进程,SystemServer From: https://www.cnblogs.com/ipythonyang/p/17168841.html