Android源码
文章平均质量分 94
Joe_c
这个作者很懒,什么都没留下…
展开
-
Android源码分析--Zygote进程分析
众所周知,Android系统中存在着两个完全不同的世界: 1. Java世界,Google所提供的SDK就主要是针对这个世界的,在这个世界中运行的程序都是基于Dalvik虚拟机的Java程序。 2. native世界,也就是利用C或C++语言开发的程序。那么问题来了,Android系统具体是如何将这两个世界联系起来的,这就是关系到本篇博文所讲的Zygote进程。原创 2015-03-07 15:47:25 · 1868 阅读 · 0 评论 -
Android源码分析--system_server进程分析
在上一篇博文中我们进行了有关Zygote进程的分析,我们知道Zygote进程创建了一个重要的进程–system_server进程后就进入了无限循环中,之后Android系统中的重要任务就交给了system_server进程,作为zygote的嫡长子进程,system_server进程的意义非凡,今天我们来分析一下system_server进程。原创 2015-03-07 15:43:48 · 4208 阅读 · 1 评论 -
Android源码分析--MediaServer源码分析(一)
MediaServer中包括了系统中的许多重要的Server:AudioFlinger:音频系统中的核心服务AudioPolicyService:音频系统中关于音频策略的重要服务MediaPlayerService:多媒体系统中的重要服务CameraService:有关照相和摄像的重要服务同时,分析MediaServer对于理解Android中的IPC机制能够提供较好的帮助。Android原创 2015-03-27 23:18:34 · 5010 阅读 · 1 评论 -
Android源码分析--MediaServer源码分析(二)
在上一篇博客中Android源码分析–MediaServer源码分析(一),我们知道了ProcessState和defaultServiceManager,在分析源码的过程中,我们被Android的Binder通信机制中的各种复杂的类关系搞的眼花缭乱,接下来我们就以MediaPlayerService为例来分析一下Binder的通信机制。首先来回顾一下:BpBinder和BBinder都是Andr原创 2015-03-29 10:47:50 · 3622 阅读 · 1 评论 -
Android源码分析--Handler和Looper机制详解
在Android系统中的应用程序,与Java的应用程序相同,都是靠消息驱动,简单的说就是:有一个消息队列,我们可以不断的向这个消息队列中添加消息,并从中取出消息,处理消息。Android中与此工作相关的主要是由Handler,Looper以及Message来完成。Looper类:为一个线程运行着一个消息循环,内部有一个消息队列,每一个线程只允许最多存在一个Looper;Handler类:允许你向原创 2015-03-13 16:21:04 · 6644 阅读 · 0 评论