1. Binder 机制详解—Binder IPC 程序结构

    前言 通过Binder入门系列,我们已知道如何创建native binder service,framework binder service,应用层binder service,并知道如何编写framework层和应用层的客户端去调用native binder service。接下来几篇博客将为大家详细分析Binder机制,目前打算写如下几篇博客:

  2. Binder service入门—框架层、应用层调用native binder service

    1.前言 上一篇介绍了如何创建应用层binder service,本篇将综合先前介绍的native binder service,framework binder service,应用层binder service等知识,讲述如何使用native 的client,framework层的client,应用层的client测试native binder service。

  3. Binder service入门—应用层binder service

    1.前言 上一篇介绍了Framework Binder Service,本篇将介绍如何创建应用层的binder service。 实际上在应用层使用binder service时,并没有直接与ServiceManager交互(应用层不能直接使用ServiceManager 类),一般是在Service子类里覆盖onBind方法,返回新创建的Binder实体对象。应用层使用Activity作为binder service的客户端,在Activity里创建ServiceConnecttion对象,并调用bindService方法绑定service,在ServiceConnection的onServiceConnected方法将接收到的IBinder对象转化为接口对象,然后再通过这个接口对象调用binder service的接口方法。

  4. Binder service入门—Framework binder service

    1.前言 上一篇介绍了natvie binder Service,本篇将介绍如何创建框架层binder service,并交给ServiceManager管理,客户端通过ServiceManager获取binder service的引用,然后测试binder service。

  5. Binder service入门–创建native binder service

    1.前言 Binder service入门系列: Binder service入门—Framework binder service: http://www.cloudchou.com/android/post-447.html Binder service入门—应用层binder service: http://www.cloudchou.com/android/post-458.html Binder service入门—框架层、应用层调用native binder service: http://www.cloudchou.com/android/post-468.html

  6. service manager和binder service的关系

    service manager是所有binder service的管理者,但它并不是这些binder service的创建者。

  7. Android FutureTask

    前言 研究AsyncTask的源码时遇到了FutureTask这个类,以前没用过,对它感觉很困惑,看FutureTask 的实现也不是很明白,于是重温了一遍Executor相关的类和接口,象Executor,ExecutorService,Callable接口,Runnable接口,Future接口,再研究了一下各个接口和类之间的关系,弄清楚了FutureTask的本意,现分享如下。

  8. Android源码如何使用Handler

    前言 前一篇文章我们详细分析了Handler机制的实现,这一篇会给大家介绍Android源码里如何使用Handler。这里会介绍以下4个例子: 1)ActivityThread Activity运行在ActivityThread里,ActivityThread就是Android应用开发时所说的UI线程,或者说是主线程,它使用了Handler机制。 2)AsyncTask AsyncTask的实现也用到了Handler机制。 3)HandlerThread HandlerThread继承自Thread,它的run方法里会创建Looper,并调用Looper.loop方法进入死循环,我们可以用HandlerThread实现worker thread。 4)IntentService IntentService的实现使用了HandlerThread,将客户端的请求交给了HanderThread,这样不会阻塞主线程,也就不会产生ANR问题。