随笔分类 -  框架层

摘要:一、消息种类 Message分为3种:普通消息(同步消息)、屏障消息(同步屏障)和异步消息。我们通常使用的都是普通消息,而屏障消息就是在消息队列中插入一个屏障,在屏障之后的所有普通消息都会被挡着,不能被处理。不过异步消息却例外,屏障不会挡住异步消息,因此可以这样认为:屏障消息就是为了确保异步消息的优 阅读全文
posted @ 2020-06-02 14:45 tiger168 阅读(2021) 评论(0) 推荐(0) 编辑
摘要:原文: https://www.cnblogs.com/mingfeng002/p/12091628.html IdleHandler:空闲处理器。 在每次next获取消息进行处理时,发现没有可以处理的消息(队列空,只有延时消息并且没到时间,同步阻塞时没有异步消息)都会回调该接口。 1.怎么使用? 阅读全文
posted @ 2020-06-02 11:30 tiger168 阅读(759) 评论(0) 推荐(0) 编辑
摘要:AsyncTask缺陷 1、生命周期 很多开发者会认为一个在Activity中创建的AsyncTask会随着Activity的销毁而销毁。然而事实并非如此。AsyncTask会一直执行, 直到doInBackground()方法执行完毕。然后,如果 cancel(boolean)被调用, 那么onC 阅读全文
posted @ 2020-01-21 11:22 tiger168 阅读(332) 评论(0) 推荐(0) 编辑
摘要:JIT,Just-in-time,即时编译,边运行边编译; AOT,Ahead Of Time,提前编译,指运行前编译。 区别:这两种编译方式的主要区别在于是否在“运行时”进行编译 优劣JIT优点: 可以根据当前硬件情况实时编译生成最优机器指令(ps. AOT也可以做到,在用户使用时使用字节码根据机 阅读全文
posted @ 2019-06-05 15:19 tiger168 阅读(1942) 评论(0) 推荐(0) 编辑
摘要:图1:创建窗口 图2:通信过程 我们知道其实任何一个窗口的创建,最终都是会创建一个 ViewRootImpl对象。ViewRootImpl 是一很重要的类,类似 ActivityThread 负责跟AmS通信一样,ViewRootImpl 的一个重要职责就是跟 WmS 通信,它通过静态变量 sWin 阅读全文
posted @ 2017-04-14 18:17 tiger168 阅读(1179) 评论(0) 推荐(0) 编辑
摘要:说明: 1. 通过Launcher或者startActivity启动最终的流程都是和上面的一致的. 2. AMP是AMS在App端(client端)的代理, ATP是ApplicationThread在AMS端(server端)的代理. 阅读全文
posted @ 2017-02-06 11:34 tiger168 阅读(538) 评论(0) 推荐(0) 编辑
摘要:注:Java系统服务与本地系统服务标注反了 1、Linux内核 Android系统启动时,首先通过BootLoader(系统加载器)加载Linux内核,在Linux加载启动时,首先初始化内核,再调用init进程。 2、Daemon进程 init进程会分别启动USB Daemon、ADB Daemon 阅读全文
posted @ 2017-02-06 11:28 tiger168 阅读(422) 评论(1) 推荐(0) 编辑
摘要:1, Intent隐式意图携带数据 2, AIDL(Binder) 3, 广播BroadCast 4, 内容提供者ContentProvider 5,Messager(内部通过binder实现) 6,文件共享 7,socket Binder底层原理 Binder是一种进程间通信机制,它提供远程过程调 阅读全文
posted @ 2016-03-31 09:29 tiger168 阅读(753) 评论(0) 推荐(0) 编辑
摘要:在Android 5.0之前,Android应用程序的主线程同时也是一个Open GL线程。但是从Android 5.0之后,Android应用程序的Open GL线程就独立出来了,称为Render Thread. Android系统的UI从绘制到显示到屏幕是分两步进行的:第一步是在Android应 阅读全文
posted @ 2016-03-25 17:53 tiger168 阅读(11120) 评论(0) 推荐(0) 编辑
摘要:深入:Android Touch事件传递机制全面解析(从WMS到View树) 通俗理解Android事件分发与消费机制 说起Android滑动冲突,是个很常见的场景,比如SliddingMenu与ListView的嵌套,要解决滑动冲突,不得不提及到View的事件分发机制。 Touch事件传递规则分析 阅读全文
posted @ 2016-03-02 16:14 tiger168 阅读(5118) 评论(0) 推荐(1) 编辑
摘要:It’s right time to learn Android’s Framework ! 前言 学习目标 写作方式 主要对象功能介绍 主要流程介绍 zygote是什么有什么作用 SystemServer是什么有什么作用它与zygote的关系是什么 ActivityManagerService是什 阅读全文
posted @ 2016-02-25 20:51 tiger168 阅读(536) 评论(0) 推荐(0) 编辑
摘要:前几天凯子哥写的Framework层的解析文章《Activity启动过程全解析》,反响还不错,这说明“写让大家都能看懂的Framework解析文章”的思想是基本正确的。 我个人觉得,深入分析的文章必不可少,但是对于更多的Android开发者——即只想做应用层开发,不想了解底层实现细节——来说,“整体 阅读全文
posted @ 2016-02-25 20:50 tiger168 阅读(920) 评论(0) 推荐(0) 编辑