ActivityManager作用:与正在运行的Activity进行交互,获取系统中所有运行的Activity相关信息,例如Task Memory Service。
如下所示:获取正在运行的服务信息,ActivityManagerNative.getDefault().getServices()调用的是代理类ActivityManagerProxy中的getServices方法。
ActivityManagerProxy是ActivityManagerNative的内部类。
ActivityManagerNative是一虚拟类,继承了Binder类实现了IActivityManager接口,如下:
gDefault是一代理模式,返回的是ActivityManagerNative的代理类ActivityManagerProxy
方法中通过ServiceManager.getSystem("activity")取得ActivityManagerNative类的子类ActivityManagerService类,国通asInterface()方法传入到代理类中。
通过getServices方法中代用了 mRemote.tr