安卓首次启动Fallbackhome是否可以直接去除?--学员作业

背景:

有学员朋友在vip群提出一个需求相关的问题,他想要把settings裁剪掉,但是发现裁剪后Fallbackhome肯定就没了,发现Launcher居然无法启动了,一直处于Bootanimation的画面,无法进入系统。

针对这个去除Fallbackhome去除后是否可以正常进入Launcher的问题,学员们也进行了激烈讨论,很多学员朋友都猜想肯定还是会进入Launcher的,只是可能时间会长一点,那么真实的情况是真的会吗?

同时提出问题的朋友还提出另一个现象:

那就是系统首次开机是可以进入到Launcher的,只是再启动reboot后就不可以了。

问题复现:

复现环境:

aosp 15 编译模拟器

复现修改:

尽可能按照学员朋友的要求进行复现,不过学员朋友是直接去除settings这个apk,其实完全不需要一定去除apk,可以考虑只去除Fallbackhome这个Activity就行

修改如下:

直接屏蔽掉设置的Fallbackhome这个Activity

packages/apps/Settings/AndroidManifest.xml
修改后进行编译 make

然后运行模拟器:emulator

发现系统一直处于bootanimation画面,时间再久也无法进入的Launcher,(注意这里大家不要设置任何设备锁)

其实这里也就是很多学员有的疑问:
马哥课程里面讲解的Fallbackhome本身好像没有干啥啊,它也只是等待检测设备解锁后启动Launcher,Fallbackhome本身自己又没有调用啥解锁,属于被动,所以普遍认为系统会自己解锁,解锁后自然会触发系统重新进行Launcher的启动。

作业提示:

上面学员的疑问和猜想其实很正常哈,说明学员们还是有认真学习Fallbackhome这块的内容。

这里大家可能会有如下想法,是不是Launcher桌面在解密后没有再被触发startActivity,是否可以考虑手动再触发startActivity既可以。

尝试命令行启动

bash 复制代码
test@test:~/aosp15/frameworks$ adb shell am start -n com.android.launcher3/.uioverrides.QuickstepLauncher
Starting: Intent { cmp=com.android.launcher3/.uioverrides.QuickstepLauncher }
Error type 3
Error: Activity class {com.android.launcher3/com.android.launcher3.uioverrides.QuickstepLauncher} does not exist.

发现依然是找不到Launcher的Activity

再看看是不是还处于加密状态:

作业要求:

1、请在上面已经对settings屏蔽了Fallbackhome后,想一个办法可以让开机动画结束,正常进入系统

2、请剖析出原因,为啥Fallbackhome去除后就会导致系统一直卡在开机动画

3、如过想要去除Fallbackhome,又要系统可以正常启动,有啥完美的方案呢?

4、请解释为啥上面说的第一次启动可以进入Launcher后面reboot后就再也不可以了

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

相关推荐
2501_9160088924 分钟前
iOS 抓包工具有哪些?全面盘点主流工具与功能对比分析
android·ios·小程序·https·uni-app·iphone·webview
2501_9159214328 分钟前
iOS混淆工具实战 视频流媒体类 App 的版权与播放安全保护
android·ios·小程序·https·uni-app·iphone·webview
CYRUS_STUDIO1 小时前
LLVM 全面解析:NDK 为什么离不开它?如何亲手编译调试 clang
android·编译器·llvm
CYRUS_STUDIO1 小时前
静态分析神器 + 动态调试利器:IDA Pro × Frida 混合调试实战
android·逆向
g_i_a_o_giao4 小时前
Android8 binder源码学习分析笔记(一)
android·java·笔记·学习·binder·安卓源码分析
翻滚丷大头鱼4 小时前
android 四大组件—BroadcastReceiver
android
人生游戏牛马NPC1号4 小时前
学习 Android (二十) 学习 OpenCV (五)
android·opencv·学习
2501_916008894 小时前
uni-app iOS 日志与崩溃分析全流程 多工具协作的实战指南
android·ios·小程序·https·uni-app·iphone·webview
文 丰4 小时前
【AndroidStudio】官网下载免安装版,AndroidStudio压缩版的配置和使用
android
WillWolf_Wang4 小时前
Linux 编译 Android 版 QGroundControl 软件并运行到手机上
android·linux·智能手机