June 04, 2019Xianzhu21 Reading time: 8 minutes FLAG_PERSISTENT 应用是否可以更新 Persistent flag 指的是 ApplicationInfo 类中的常量 FLAG_PERSISTENT (1<<3)。如果一个应用是 persistent 的,则永远在运行状态,即时被 kill 也会被重新启动。SystemUI 就是 persistent 的应用,可以想象如果 SystemUI 停止运行了... Continue Reading ...
May 24, 2019Xianzhu21 Reading time: 10 minutes Android 8.0 加入的「Background Service Limitations」 为了减少系统资源的使用,Android 8 引入了「Background Execution Limits」,其中对于 Service 的限制是,不能调用 `startService()` 方法启动一个后台 Service,`bindService()` 无影响... Continue Reading ...
May 16, 2019Xianzhu21 Reading time: 5 minutes DisplayFrames 分析:Android 中都有哪些 Frame? DisplayFrames 中包含了屏幕区域、应用区域、内容区域、安全显示区域等等。DisplayFrames 中用十几个 Rect 对象来表示这些 frame... Continue Reading ...
May 14, 2019Xianzhu21 Reading time: 7 minutes PMS 初始化时抛出 installd 空指针问题分析 从 log 中看出异常原因是调用 IInstalld 方法的时候抛出了空指针异常,IInstalld 其实就是 installd 在 SystemServer 中的代理,Java 层对应的 Service 是 Installer... Continue Reading ...
August 08, 2017Xianzhu21 Reading time: 13 minutes RILJ 的服务机制 RIL(Radio Interface Layer) 是一种 HAL(Hardware Abstraction Layer),它提供控制 Modem 的统一接口。而 RILJ 是一种给 Java 层提供与 RIL 通信的Android Framework 层服务... Continue Reading ...
April 08, 2017Xianzhu21 Reading time: 2 minutes 编译 Android 模块及调试 首先加载编译环境,然后编译 Android 系统的单个模块,最后替换模块。 Continue Reading ...