Android源代码编译命令m/mm/mmm/make分析

在前文中,我们分析了Android编译环境的初始化过程。Android编译环境初始化完成后,我们就可以用m/mm/mmm/make命令编译源代码了。当然,这要求每一个模块都有一个Android.m...

4428次阅读  |  5年以前  |  阅读全文 »
Android进程间通信(IPC)机制Binder简要介绍和学习计划

在Android系统中,每一个应用程序都是由一些Activity和Service组成的,这些Activity和Service有可能运行在同一个进程中,也有可能运行在不同的进程中。那么,不在同一个进...

3236次阅读  |  5年以前  |  阅读全文 »
Chromium硬件加速渲染的OpenGL命令执行过程分析
2437次阅读  |  5年以前  |  阅读全文 »
Android窗口管理服务WindowManagerService对壁纸窗口(Wallpaper Window)的管理分析

在Android系统中,壁纸窗口和输入法窗口一样,都是一种特殊类型的窗口,而且它们都是喜欢和一个普通的Activity窗口缠绵在一起。大家可以充分地想象这样的一个3W场景:输入...

2724次阅读  |  5年以前  |  阅读全文 »
Android运行时ART加载类和方法的过程分析
3353次阅读  |  5年以前  |  阅读全文 »
Chromium插件(Plugin)机制简要介绍和学习计划

在Chromium中,除了可以使用Extension增强浏览器功能,还可以使用Plugin。两者最大区别是前者用JS开发,后者用C/C++开发。这意味着Plugin以Native Code运行,在性能上要优...

3045次阅读  |  5年以前  |  阅读全文 »
《Android系统源代码情景分析》连载回忆录:灵感之源

上个月,在花了一年半时间之后,写了55篇文章,分析完成了Chromium在Android上的实现,以及Android基于Chromium实现的WebView。学到了很多东西,不过也挺累的,平均不到两...

1989次阅读  |  5年以前  |  阅读全文 »
Android应用程序发送广播(sendBroadcast)的过程分析

前面我们分析了Android应用程序注册广播接收器的过程,这个过程只完成了万里长征的第一步,接下来它还要等待ActivityManagerService将广播分发过来。ActivityManagerServic...

2539次阅读  |  5年以前  |  阅读全文 »
Android应用程序UI硬件加速渲染的Display List渲染过程分析

在硬件加速渲染环境中,Android应用程序窗口的UI渲染是分两步进行的。第一步是构建Display List,发生在应用程序进程的Main Thread中;第二步是渲染Display List,发生在应...

4139次阅读  |  5年以前  |  阅读全文 »
Android编译系统简要介绍和学习计划

在Android源码环境中,我们开发好一个模块后,再写一个Android.mk文件,就可通过m/mm/mmm/make等命令进行编译。此外,通过make命令还可制作各种系统镜像文件,例如system.i...

2175次阅读  |  5年以前  |  阅读全文 »
Android窗口管理服务WindowManagerService计算窗口Z轴位置的过程分析

通过前面几篇文章的学习,我们知道了在Android系统中,无论是普通的Activity窗口,还是特殊的输入法窗口和壁纸窗口,它们都是被WindowManagerService服务组织在一个窗口堆...

2429次阅读  |  5年以前  |  阅读全文 »
Android应用程序组件Content Provider应用实例

上文简要介绍了Android应用程序组件Content Provider在应用程序间共享数据的原理,但是没有进一步研究它的实现。本文将实现两个应用程序,其中一个以Content Provider的形...

2555次阅读  |  5年以前  |  阅读全文 »
Chromium插件(Plugin)实例(Instance)创建过程分析

Chromium在解析网页时,每遇到一个标签,就会创建一个Plugin Instance。一般来说,Plugin Instance是在Plugin进程中创建和运行的。一个Plugin Module对应一个Plugin进程,...

2808次阅读  |  5年以前  |  阅读全文 »
Chromium扩展(Extension)的页面(Page)加载过程分析

Chromium的Extension Page其实就是网页,因此它们的加载过程与普通网页相同。常见的Extension Page有Background Page和Popup Page。其中,Background Page在浏览器窗口初始...

2436次阅读  |  5年以前  |  阅读全文 »
SEAndroid安全机制框架分析

我们知道,Android系统基于Linux实现。针对传统Linux系统,NSA开发了一套安全机制SELinux,用来加强安全性。然而,由于Android系统有着独特的用户空间运行时,因此SELinux...

2862次阅读  |  5年以前  |  阅读全文 »
Android系统匿名共享内存(Anonymous Shared Memory)C++调用接口分析

在Android系统中,针对移动设备内存空间有限的特点,提供了一种在进程间共享数据的机制:匿名共享内存,它能够辅助内存管理系统来有效地管理内存,它的实现原理我们在前面...

2487次阅读  |  5年以前  |  阅读全文 »
Android视图SurfaceView的实现原理分析

在Android系统中,有一种特殊的视图,称为SurfaceView,它拥有独立的绘图表面,即它不与其宿主窗口共享同一个绘图表面。由于拥有独立的绘图表面,因此SurfaceView的UI就可...

3297次阅读  |  5年以前  |  阅读全文 »
Chromium网页Frame Tree创建过程分析

Chromium在加载一个网页之前,需要在Browser进程创建一个Frame Tree。Browser进程为网页创建了Frame Tree之后,再请求Render进程加载其内容。Frame Tree将网页抽象为Render...

2410次阅读  |  5年以前  |  阅读全文 »
Android应用程序UI硬件加速渲染技术简要介绍和学习计划

Android系统的流畅性一直被拿来与iOS比较,并且认为不如后者。这一方面与Android设备硬件质量参差不齐有关,另一方面也与Android系统的实现有关。例如在3.0前,Android应用...

3323次阅读  |  5年以前  |  阅读全文 »
Chromium网页Render Object Tree创建过程分析

在前面一文中,我们分析了网页DOM Tree的创建过程。网页DOM Tree创建完成之后,WebKit会根据它的内容创建一个Render Object Tree。Render Object Tree是和网页渲染有关的一...

2595次阅读  |  5年以前  |  阅读全文 »
Android窗口管理服务WindowManagerService切换Activity窗口(App Transition)的过程分析
3088次阅读  |  5年以前  |  阅读全文 »
Chromium网页输入事件捕捉和手势检测过程分析
2339次阅读  |  5年以前  |  阅读全文 »
Android应用程序组件Content Provider的启动过程源代码分析
2478次阅读  |  5年以前  |  阅读全文 »
Chromium为视频标签<video>全屏播放的过程分析
2461次阅读  |  5年以前  |  阅读全文 »
Android运行时ART加载OAT文件的过程分析
3063次阅读  |  5年以前  |  阅读全文 »
Android应用程序框架层和系统运行库层日志系统源代码分析
3626次阅读  |  5年以前  |  阅读全文 »
Android系统Surface机制的SurfaceFlinger服务对帧缓冲区(Frame Buffer)的管理分析
3310次阅读  |  5年以前  |  阅读全文 »
Dalvik虚拟机垃圾收集机制简要介绍和学习计划
3953次阅读  |  5年以前  |  阅读全文 »
Android系统中的广播(Broadcast)机制简要介绍和学习计划
2798次阅读  |  5年以前  |  阅读全文 »
浅谈Service Manager成为Android进程间通信(IPC)机制Binder守护进程之路
3095次阅读  |  5年以前  |  阅读全文 »
在Ubuntu上为Android系统的Application Frameworks层增加硬件访问服务
2572次阅读  |  5年以前  |  阅读全文 »
Android硬件抽象层(HAL)概要介绍和学习计划
3387次阅读  |  5年以前  |  阅读全文 »
Chromium网页Layer Tree同步为Pending Layer Tree的过程分析
2392次阅读  |  5年以前  |  阅读全文 »
Android应用程序窗口(Activity)的绘图表面(Surface)的创建过程分析
2697次阅读  |  5年以前  |  阅读全文 »
在Ubuntu上为Android系统内置Java应用程序测试Application Frameworks层的硬件服务
3111次阅读  |  5年以前  |  阅读全文 »
SEAndroid安全机制对Android属性访问的保护分析
4317次阅读  |  5年以前  |  阅读全文 »
Chromium网页光栅化过程分析
2503次阅读  |  5年以前  |  阅读全文 »
Android窗口管理服务WindowManagerService计算Activity窗口大小的过程分析
3223次阅读  |  5年以前  |  阅读全文 »
Android应用程序请求SurfaceFlinger服务创建Surface的过程分析
3485次阅读  |  5年以前  |  阅读全文 »
Android系统匿名共享内存Ashmem(Anonymous Shared Memory)驱动程序源代码分析
3005次阅读  |  5年以前  |  阅读全文 »
制作可独立分发的Android模拟器
2943次阅读  |  5年以前  |  阅读全文 »
SEAndroid安全机制简要介绍和学习计划
3056次阅读  |  5年以前  |  阅读全文 »
Chromium硬件加速渲染的OpenGL上下文绘图表面创建过程分析
1984次阅读  |  5年以前  |  阅读全文 »
Android应用程序消息处理机制(Looper、Handler)分析
3335次阅读  |  5年以前  |  阅读全文 »
ART运行时Foreground GC和Background GC切换过程分析
2652次阅读  |  5年以前  |  阅读全文 »
Chromium的Render进程启动过程分析
1854次阅读  |  5年以前  |  阅读全文 »
ART运行时为新创建对象分配内存的过程分析
2495次阅读  |  5年以前  |  阅读全文 »
Android系统进程Zygote启动过程的源代码分析
2812次阅读  |  5年以前  |  阅读全文 »
Chromium为视频标签<video>渲染视频画面的过程分析
3185次阅读  |  5年以前  |  阅读全文 »
Android应用程序与SurfaceFlinger服务之间的共享UI元数据(SharedClient)的创建过程分析
2757次阅读  |  5年以前  |  阅读全文 »

Copyright© 2013-2019

京ICP备2023019179号-2