on fs
mount_all /fstab
# system\core\init\Keywords.h
KEYWORD(mount_all, COMMAND, 1, do_mount_all)
do_mount_all
...
property_set("vold.decrypt", "trigger_encryption")
...
on property:vold.decrypt=trigger_encryption
start surfaceflinger
start encrypt
# frameworks/native/services/surfaceflinger/main_surfaceflinger.cpp
将 SurfaceFlinger 添加到serviceManger
# frameworks/native/services/surfaceflinger/SurfaceFlinger.cpp
SurfaceFlinger::init()
startBootAnim();
void SurfaceFlinger::startBootAnim() {
property_set("service.bootanim.exit", "0");
property_set("ctl.start", "bootanim");
}