
Android Framework浅析
文章平均质量分 87
分析Andrioid Framework层源码,讲解Binder机制原理,Android系统中按键事件和触摸事件的传递机制,更深入层次的理解Context,熟悉Android窗口的创建过程
yuanzeyao
有少量资深Android开发岗位,欢迎投简历(注:需要金融背景,有效期:2024-04-30)
展开
-
Android framework层JNI的使用浅析
JNI技术对于多java开发的朋友相信并不陌生,即(java native interface),本地调用接口,主要功能有以下两点:1、java层调用C/C++层代码2、C/C++层调用java层代码可能有些人会觉得jni技术破坏了Java语言的跨平台性,有这种想法可能是因为你对java理解得还不够深,如果你看看jdk源码,你会发现在jdk里面大量使用了jni技术,而且java虚拟机就是用本地语言写的,所以导致jvm并不能跨平台性,所以说java的跨平台性并不是100%的跨平台的。相反你应该看到使用原创 2015-01-05 12:27:58 · 36300 阅读 · 8 评论 -
Android中资源管理机制详细分析
在Android中,所有的资源都在res目录下存放,包括drawable,layout,strings,anim等等,当我们向工程中加入任何一个资源时,会在R类中相应会为该 资源分配一个id,我们在应用中就是通过这个id来访问资源的,相信做过Andorid开发的朋友对于这些肯定不会陌生,所以这个也不是我今天想要说的,我今天想和大家一起学习的是Android是如何管理资源的,在Android系统中,原创 2015-01-04 12:56:32 · 13142 阅读 · 3 评论 -
深入分析Intent匹配查询
在前面的一篇文章中,我们详细分析了PackageManagerService的启动过程(在后面的文章中,为了方便,我会将PackageManagerService简称PMS),PMS在启动的过程中,会去扫描系统app和用户安装的app,然后将这些app的信息保存到一些数据结构中,在这篇文章中,我们会接着前面一篇文章继续分析Intent匹配查询过程,如果对PMS不是很熟悉的同学建议先去阅读前面一篇文章原创 2014-12-30 22:37:41 · 9614 阅读 · 1 评论 -
PackageManagerService的启动过程分析
这篇文章主要分析了Android系统中一个比较重要的Service在启动过程,将PackageManagerService的启动过程分为了两部分,1、扫描xml 2、扫描apk,并用uml和简单代码描述了PackageManagerService的启动过程。原创 2014-12-28 18:13:07 · 10630 阅读 · 2 评论 -
Android Touch事件传递机制详解 下
尊重原创:资源下载:http://download.youkuaiyun.com/detail/yuanzeyao2008/7660997在前一篇文章中,我主要讲解了Android源码中的Touch事件的传递过程,现在我想使用一个demo以及一个实例来学习一下Andorid中的Touch事件处理过程。在Android系统中,和Touch事件分发和处理紧密相关的三个函数如下:(1) pu原创 2014-07-21 22:41:57 · 6391 阅读 · 3 评论 -
Android Touch事件传递机制详解 上
最近总是遇到关于Android Touch事件的问题,如:滑动冲突的问题,以前也花时间学习过Android Touch事件的传递机制,可以每次用起来的时候总是忘记了,索性自己总结一下写篇文章避免以后忘记了,其实网上关于Touch事件的传递的文章真的很多,但是很少有系统性的,都是写了一个简单的demo运行了一下,对于我们了解Android Touch事件基本上没有任何帮助。 今天我打算从源原创 2014-07-19 15:37:35 · 9165 阅读 · 4 评论 -
Android中按键消息分发机制 下
Android按键消息分发机制原创 2013-10-30 17:34:57 · 6551 阅读 · 1 评论 -
Android中按键消息分发机制 上
Android按键消息分发机制原创 2013-10-30 17:25:26 · 10274 阅读 · 1 评论 -
Android中窗口的创建过程
在阅读本文之前建议先阅读我的另外一篇Java层Binder机制详解,因为里面有些地方涉及到通过进程间通过Binder机制通信。在Android将窗口分为三类:应用窗口,子窗口,系统窗口应用窗口一般需要和一个Activity对应,子窗口是有父窗口的窗口,系统窗口时由系统创建的窗口,用户是无法创建系统窗口的(Toast,输入法窗口,壁纸窗口除外)这里我主要分析一下应用窗口的创建原创 2013-10-23 22:01:05 · 8775 阅读 · 6 评论 -
更深层次的理解Context
Context在开发Android应用的过程中扮演着非常重要的角色,比如启动一个Activity需要使用context.startActivity方法,将一个xml文件转换为一个View对象也需要使用Context对象,可以这么说,离开了这个类,Android开发寸步难行,对于这样一个类,我们又对他了解多少呢。我就说说我的感受吧,在刚开始学习Android开发时,感觉使用Context的地方一直就原创 2013-10-22 22:26:24 · 10279 阅读 · 4 评论 -
Java层Binder机制详解
这篇文章是阅读《Android 内核剖析》一书的笔记,现在写下来希望能加深自己的理解,如果理解错误,希望各位朋友能指出来。 Binder是一种基于C/S的架构,主要包括四个部分:服务端(Server),客户端(Client),Binder驱动,ServiceManager。Binder是Android系统中非常重要的一种IPC机制,如果你想研究Frameworks,必须先对Bin原创 2013-10-22 21:59:54 · 16815 阅读 · 5 评论