Android开机启动之Bootanimation
前言
手机或其他Android智能终端开机都会先显示一个动画,然后才进入桌面,接下来看看这个bootanimation程序是怎么跑的
一、bootanimation框图
从上面的启动框图中可以看出:
- bootanimation也是init进程启动的,在init.rc中启动bootanim进程
- 启动bootanimation是依赖android系统中的surface管理
- 需要surfacefinger初始化完成了,才会启动bootanimation进程
- bootanimation是要等待android ui即将显示的时候才会退出
- WSM会setprop“service.bootanim.exit” = 1来通知动画结束
- bootanimation.cpp中轮询检查属性service.bootanim.exit,根据这个属性值退出动画
二、代码时序
- 系统内核起来后会启动第一个进程,即init进程。
init进程会根据init.rc配置启动surfaceflinger进程。
/frameworks/