执行adb am switch-user命令后安卓手机卡在用户切换界面如何修复
Moto X Play Android 5.1.1 adb切换用户卡住故障修复方案
该故障是Moto X Play官方安卓5.1.1固件的已知缺陷,系统UI的用户切换动画渲染逻辑存在bug,通过adb触发用户切换时会导致动画无限卡住,但后台服务仍可正常运行,可通过以下方案解决:
临时绕过方案(无需修改系统/root)
不需要改动系统配置,每次切换用户时按以下顺序执行adb命令即可:
- 先停止系统UI进程,避免切换动画触发bug:
adb shell am force-stop com.android.systemui - 执行用户切换命令:
adb shell am switch-user 10 - 等待2~3秒(确保后台用户切换逻辑执行完成),重启系统UI:
adb shell am startservice com.android.systemui/.SystemUIService - 切换过程中不要手动触发亮灭屏操作,避免唤醒逻辑冲突导致切换失败
永久修复方案(需Root权限或刷入第三方固件)
修改系统分区前请提前备份整机数据,避免操作失误导致数据丢失或设备变砖
- 方案一:刷入适配Moto X Play的安卓7.0及以上第三方固件,该类固件已经修复了多用户切换的底层逻辑缺陷,是稳定性最高的解决方案
- 方案二:保留安卓5.1.1系统的前提下,获取Root权限后修改
/system/build.prop配置文件,添加以下3行配置:
修改完成后将文件权限设置为fw.max_users=5 fw.show_multiuserui=1 persist.sys.user.switcher_enabled=true0644,重启设备后再测试adb切换用户即可 - 方案三:刷入对应机型的多用户修复补丁,补丁会直接替换存在bug的
framework.jar和services.jar系统文件,无需手动修改配置
注意事项
- 切换的用户ID必须提前创建完成,未创建的用户会直接触发系统异常,创建新用户的命令为:
adb shell pm create-user [自定义用户名] - 不要给访客类用户分配设备管理员权限,避免权限冲突导致切换失败
- 如果修改build.prop后出现无法开机的问题,可进入Recovery模式挂载system分区,回退此前的修改即可恢复
内容的提问来源于stack exchange,提问作者Chaussette
相关产品推荐
相关产品推荐

