摘要:
代码位于frameworks/base/services/core/java/com/android/server/am/,一共有七十个文件。 Java源码位于package com.android.server.am里 下面是消息处理部分 处理应用崩溃消息 处理应用违反strict mode策略 阅读全文
随笔分类 - Android-Framework
【8.0.0_r4】AMS架构与流程分析
2018-05-15 14:13 by cascle, 1425 阅读, 收藏, 编辑
摘要:
AMS主要用来管理应用程序的生命周期,以及其核心组件,包括Activity,Service,Provider,Broadcast,Task等 之前整体架构如下图(O上已经废弃) 新的架构比较直接,简化了很多,直接调用IApplicationThread和IActivityManger这两个接口就可以 阅读全文
【8.0.0_r4】AMS分析(十六)(ActivityManagerService.java上)
2018-05-15 11:46 by cascle, 4431 阅读, 收藏, 编辑
摘要:
代码位于frameworks/base/services/core/java/com/android/server/am/,一共有七十个文件。 Java源码位于package com.android.server.am里 该类继承了IActivityManager.Stub的aidl通信接口,实现了 阅读全文
Intent.java分析
2017-08-22 21:44 by cascle, 4295 阅读, 收藏, 编辑
摘要:
代码位于frameworks/base/core/java/anroid/Content/Intent.java Intent是对要进行操作的一种抽象描述。用action抽象操作,用data(android.net.Uri)抽象操作参数。 除此之外,category用来描述action所属的类别(添 阅读全文
SystemUI分析
2017-06-21 13:48 by cascle, 1227 阅读, 收藏, 编辑
摘要:
SystemUI是安卓的一个系统APP,负责的内容有系统通知栏,状态栏,最近应用程序,锁屏,壁纸,屏保,系统对话框,截屏,录屏等功能。 Apk的路径位于/system/priv-app,源码code位于frameworks/base/packages/SystemUI。 1.Android.mk 2 阅读全文
Keyguard分析
2017-06-20 12:37 by cascle, 2281 阅读, 收藏, 编辑
摘要:
从Android 6.0开始,位于frameworks/bases/packages/Keyguard的Keyguard开始被编译为一个jar包,被SystemUI静态导入,相当于SystemUI的一个界面,这样Keyguard就可以复用SystemUI里关于通知的那一部分代码,这个在Keyuard 阅读全文
Android中的sp与wp
2016-09-12 14:48 by cascle, 3424 阅读, 收藏, 编辑
摘要:
Android的智能指针方案是浸入式方案,管理引用计数的部分放在基类Refbase里(其他类继承这个类就自动拥有管理引用基数的能力了),配套的句柄类sp、wp会重载相应运算符使这些对外部类进行包装的句柄类被操纵的时候更像一个指针运算符,并使用RAII技术在构造和析构的时候调用Refbase的引用基数 阅读全文
消息循环相关
2016-07-20 11:42 by cascle, 658 阅读, 收藏, 编辑
摘要:
消息循环相关三个大类:Looper,MesseageQueue,Handler Looper是发动机,负责轮询MessageQueue,等待Handler发送来的消息,即消息并不是直接加到MessageQueue里,而是通过Handler间接加入 先看消息循环的基础,Message这个类 Messa 阅读全文