安卓15开机启动Fallbackhome去除--成果展示

背景:

针对给学员朋友布置的作业:
安卓开机启动Fallbackhome是否可以直接去除?--学员作业

马哥这边也尝试进行实现,实现后也发现确实针对Fallbackhome去除的这个小项目取得了一定的成果,这个Fallbackhome去除成果主要分为2个情况进行分析。

1、没有设置安全密码锁情况

这种情况下其实是可以考虑进行提前解锁ce的,实现后的效果如下

大家明显看到确实在系统启动后,可以直接从bootanimation直接进入到正常的手机Launcher上,进入也没有看到有任何的Fallbackhome画面

实现的核心思路:

考虑在框架里面AMS的systemReady方法中进行提前的解锁ce的方式。(详细源码vip群分享)

2、设置安全密码锁情况

这种情况下因为有密码,手势等,属于安全级别,无法通过直接解锁ce方法进行解锁,这种情况下就无法在没有解锁前解锁ce,所以还是需要有一个Fallbackhome的Activity。

这块其实就不建议去除Fallbackhome了,因为只要有密码等安全设置,系统是无法在没有用户输入密码前直接解锁ce。

总结:

大家都可能为了提高开机启动速度,或者说不想让用户看到Fallbackhome画面也好,都会有想办法去除Fallbackhome的需求或者想法,但是大家需要注意的是android以前也是没有Fallbackhome的,也是指导出现了CE加密才出现的,本质上Fallbackhome就是作为系统还没解锁前作为launcher的Activity进行启动,不然系统啥Activity都无法启动的话,就会一直处于开机动画,无法进入系统。

那么最后是否可以去除Fallbackhome呢?

这个其实需要看你的需求,如果你的设备是那种根本不存在让用户输入密码等解锁情况,那么其实是可以考虑去除,也确实可以起到一定的优化第一次开机时间。

但是如果设备还是会有设置密码,或者九宫格解锁这种,那么就不建议去除Fallbackhome。

更多framework实战开发干货,请关注下面"千里马学框架"

相关推荐
BoomHe1 天前
Android AOSP13 原生 Launcher3 壁纸获取方式
android
Digitally1 天前
如何将联系人从 Android 转移到 Android
android
猿小喵1 天前
MySQL慢查询分析与处理-第二篇
数据库·mysql·性能优化
李小枫1 天前
webflux接收application/x-www-form-urlencoded参数
android·java·开发语言
LilySesy1 天前
【与AI+】英语day4——数据库与性能优化
数据库·oracle·性能优化·sap·abap·自动翻译
爱丽_1 天前
MySQL `EXPLAIN`:看懂执行计划、判断索引是否生效与排错套路
android·数据库·mysql
NPE~1 天前
[App逆向]环境搭建下篇 — — 逆向源码+hook实战
android·javascript·python·教程·逆向·hook·逆向分析
yewq-cn1 天前
AOSP 下载
android
cch89181 天前
Laravel vs ThinkPHP:PHP框架终极对决
android·php·laravel
切糕师学AI1 天前
深入浅出顺序磁盘 I/O:原理、优化与应用
性能优化·i/o·磁盘