binder

深入理解 ServiceManager

ServiceManager是安卓中一个重要的类,用于管理所有的系统服务,维护着系统服务和客户端的binder通信。 对此陌生的可以先看系统服务与ServiceManager来了解应用层是如何使用ServiceManager的。 我们可以通过 ServiceManager.getService(String name)来获取服务,返回的是一个Binder对象 […]

Android Toast 原理分析

Android Toast 是我们日常开发中常用的View组件,下面分析一下Toast是如何运作的,开始之前先要知道所有的视图都是通过 WindowManager.addView(mView, mParams) 添加并显示到屏幕上的,这是一个IPC调用。对此有疑问的可以先翻看一下相关的文章。 使用篇: 使用还不简单,一行代码搞定: Toast.makeTex […]

系统服务与 ServiceManager

Android Binder 机制是安卓应用运行的基础,一个应用的运行需要无法避免地和系统提供的Binder做交互。Android 系统以服务(Service)的方式暴露出很多Binder对象,准确的说我们拿到的是Binder代理对象(BinderProxy),真正的Binder对象运行于安卓系统进程中(system_process)。我们的应用以夸进程的方 […]