android service client

SystemServer.java里面会去把各种服务加入服务管理里面ServiceManager.addService

后期调用服务getService(servicename)获取前面hashmap里面的服务IBinder

获取该IBinder后通过IXXXServicesManager.Stub.asInterface获取服务接口

我们真正使用的XXManager里面常常拥有一个IXXX的IBinder作为实现。

而在ContextImpl中会把XXManager添加到SYSTEM_SERVICE_MAP的hashmap中去,在有context的地方可以通过getSystemService获取这些Manager的。

原文地址:https://www.cnblogs.com/Empenguin/p/2999903.html