摘要: 开机动画流程分析 开机动画流程图 2.开机动画流程 2.1 开机动画进程启动 ① Init进程启动以后会根据init.rc配置来启动surfaceflinger服务② Surfaceflinger的init()方法中启动一个叫StartBootAnimThread的线程专门来启动开机动画进程 LOC 阅读全文
posted @ 2020-09-24 09:26 feibin筱飞 阅读(751) 评论(0) 推荐(0) 编辑
摘要: 一、启动流程 SystemServer的在Android体系中所处的地位,SystemServer由Zygote fork生成的,进程名为system_server,该进程承载着framework的核心服务。startSystemServer()函数是system_server启动流程的起点, 启动 阅读全文
posted @ 2020-08-20 16:54 feibin筱飞 阅读(587) 评论(0) 推荐(0) 编辑
摘要: 一. system_server进程和Zygote进程 system_server进程:是用于管理整个Java framework层,包含ActivityManager,PowerManager等各种系统服务; Zygote进程:是Android系统的首个Java进程,Zygote是所有Java进程 阅读全文
posted @ 2020-08-19 20:14 feibin筱飞 阅读(504) 评论(0) 推荐(0) 编辑
摘要: 开机动画是在SurfaceFlinger实例通过调用startBootAnim()启动的,BootAnim是如何启动和结束的,总体框架图如下: 1.init.rc service surfaceflinger /system/bin/surfaceflinger class main user sy 阅读全文
posted @ 2020-08-19 16:13 feibin筱飞 阅读(885) 评论(0) 推荐(0) 编辑
摘要: Android系统的启动优化 1. 优化preload的classes和resource 由于所有的Android应用程序都是从Zygote进程fork出来的,所以为了共享一些class和resourse资源,Zygote进程初始化过程中,会预先加载一些常用的java class和资源文件到进程的内 阅读全文
posted @ 2020-08-17 14:15 feibin筱飞 阅读(1637) 评论(1) 推荐(1) 编辑
摘要: 主要文件目录:system/core/init/ - init.cpp - init_parser.cpp - signal_handler.cpp - property_service.cpp 一、概述 1.启动电源以及系统启动 当按下电源时引导芯片代码从预定义的地方(固化在ROM)开始执行。加载 阅读全文
posted @ 2020-08-12 15:57 feibin筱飞 阅读(1181) 评论(0) 推荐(0) 编辑
摘要: 当Zygote进程启动后, 便会执行到frameworks/base/cmds/app_process/App_main.cpp文件的main()方法. 整个调用流程: int main(int argc, char* const argv[]) { AppRuntime runtime(argv[ 阅读全文
posted @ 2020-08-11 20:17 feibin筱飞 阅读(340) 评论(0) 推荐(0) 编辑
摘要: init 进程是Android系统中用户进程空间的第一个进程,进程号为一,创建Zygote和服务属性等,init进程由多个源文件共同组成,源码放在system/core/init 中。Android系统底层基于Linux Kernel, 当Kernel启动过程会创建init进程, 该进程是所有用户空 阅读全文
posted @ 2020-08-11 11:30 feibin筱飞 阅读(795) 评论(0) 推荐(0) 编辑
摘要: Cookie与Session会话技术 一、什么是会话 会话:当用户打开浏览器,访问多个WEB资源,然后关闭浏览器的过程,称之为一个会话,选项卡,弹出页面都属于这个会话,且共享同一个session。 二、如何进行会话 方式一:将状态保存在客户端。 方式二:将状态保存在服务器端。 三、cookie技术( 阅读全文
posted @ 2019-12-22 16:47 feibin筱飞 阅读(274) 评论(0) 推荐(0) 编辑
摘要: JavaScript数组循环 一、前言 利用Javascript map(),reduce()和filter()数组方法可以遍历数组。而不是积累起来for循环和嵌套来处理列表和集合中的数据,利用这些方法可以更好地将逻辑组织成功能的构建块,然后将它们链接起来以创建更可读和更易于理解的实现。ES6也提供 阅读全文
posted @ 2019-12-22 16:41 feibin筱飞 阅读(2294) 评论(0) 推荐(1) 编辑