- 博客(7)
- 收藏
- 关注
原创 《Android内核剖析》读书笔记 第13章 View工作原理【触摸消息派发】
相比按键消息,触摸消息也是由ViewRootImpl.WindowInputEventReceiver实例负责接收,然后判断消息类型之后执行不同的方法,对于触摸消息就是执行deliverPointerEvent(.)方法;不同点主要以下几点:触摸消息由消息获取模块InputManagerService直接派发给应用程序,而无需经过Wms内部的预处理,最新的版本中仅仅会对当屏幕关闭时执行
2013-06-25 18:43:37 4996 1
原创 《Android内核剖析》读书笔记 第13章 View工作原理【消息类型与按键消息派发】
View是android系统的三大核心基础组件之一(另外两个分别是Ams和Wms),我们经常提到的Activity/Service/Content Provider/Broadcast Receiver这是应用开发层面的四大组件;View提供了对页面展示各种元素的一种抽象,android系统中用到的所有UI控件(比如按钮、文本框等)都是继承于View类,他主要完成两块核心功能,其一:针对各种按
2013-06-25 18:38:00 4608 1
原创 《Android内核剖析》读书笔记 第12章 屏幕绘图基础
Android中的GUI系统是客户端和服务端配合的窗口系统,即后台运行了一个绘制服务,每个应用程序都是该服务端的一个客户端,当客户端需要绘制时,首先请求服务端创建一个窗口,然后在窗口中进行具体的视图内容绘制;对于每个客户端而言,他们都感觉自己独占了屏幕,而对于服务端而言,它会给每一个客户端窗口分配不同的层值,并根据用户的交互情况动态改变窗口的层值,这就给用户造成了所谓的前台窗口和后台窗口的概念;
2013-06-20 19:51:34 3428
原创 《Android内核剖析》读书笔记 第8章 创建窗口的过程
本章主要关注的是在APP应用内部页面内容的加载过程,不涉及远程服务端Wms内部逻辑(这部分内容详见《第14章 Wms工作原理》);首先回顾下第6章所介绍过的一些有关窗口相关的内容:对于Wms管理的窗口,具体指的是View,而不是Window类,Window类只是提供对窗口操作的一组抽象API而已;每个Activity都会对应一个窗口IWindow,当Wms收到用户消息之后会将消息派发到
2013-06-19 17:11:54 4833
原创 《Android内核剖析》读书笔记 第7章 理解Context
Context在我们实际开发中被广泛用到,比如 startActivity(…)/getResources()/ getSharedPreferences(…)/getSystemService(.)等等;书中把Context理解为一个应用场景,一个Activity实例就是一个应用场景,一个Service实例也是一种应用场景,只是他木有前台界面而已;与Context相关类的继承关系如下:
2013-06-09 11:41:28 3434
原创 《Android内核剖析》读书笔记 第6章 应用框架Framework概述
其实android就是基于Linux内核的一个GUI系统,只是他运行在手机上,各种资源都比较有限,而且他不仅处理按键事件,更主要的是处理触控事件;其整体架构可以参考下图(此图来源于网络):本章主要是介绍其中的应用框架层(Application Framework),前面的章节已经提到android是基于多进程设计的,先看看如下手稿图(mac下没找到顺手的UML画图工具),其类名基于4.
2013-06-08 18:40:33 4185 1
原创 《Android内核剖析》读书笔记 第5章 进程间通信核心框架Binder
Binder:英文的意思是别针、回形针。我们经常用别针把两张纸“别”在一起,在android系统中,Binder是用来完成进程间通信IPC的基础框架,即把不同进程“别”在一起,便于各个进程之间可以相互传递消息;如果做过Java服务端开发的话,你也可以理解成一种RPC调用,即在本地直接调用其他进程中的功能;理解该机制将有助于更好的掌握后面的android整体架构设计,因为核心模块之间的通信都是通过B
2013-06-05 19:56:51 3844
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人