原文链接:https://blog.csdn.net/Hebin320320/article/details/123881721
问题描述
a.设备长按电源键,弹出关机、重启菜单;再长按弹框中的关机按钮,就会出现安全模式的弹框;安全模式有以下几个特点:
1.任何第三方应用程序都不会自动启动,只有系统应用程序可以执行
2.桌面左下角会显示【安全模式】字样
3.在安全模式下,用户可以卸载有问题的应用程序
4.安全模式不会损坏任何应用程序和个人数据
b.碰到还有有一种情况,固件有给客户添加按键支持,但是实际的设备没有接按键,桌面左下角也会出现安全模式字样。
正常是不需要安全模式的,也不允许用户进入安全模式,所以,需要将安全模式屏蔽掉。
解决方法
diff --git a/frameworks/base/services/core/java/com/android/server/power/ShutdownThread.java b/frameworks/base/services/core/java/com/android/server/power/ShutdownThread.java
index ae73dbc..8cc77c4 100644
--- a/frameworks/base/services/core/java/com/android/server/power/ShutdownThread.java
+++ b/frameworks/base/services/core/java/com/android/server/power/ShutdownThread.java
@@ -271,7 +271,7 @@ public final class ShutdownThread extends Thread {
}
mReboot = true;
- mRebootSafeMode = true;
+ mRebootSafeMode = false;
mRebootHasProgressBar = false;
mReason = null;
shutdownInner(context, confirm);
diff --git a/frameworks/base/services/core/java/com/android/server/wm/WindowManagerService.java b/frameworks/base/services/core/java/com/android/server/wm/WindowManagerService.java
index 2ee8a7e..c8dbb56 100644
--- a/frameworks/base/services/core/java/com/android/server/wm/WindowManagerService.java
+++ b/frameworks/base/services/core/java/com/android/server/wm/WindowManagerService.java
@@ -4807,7 +4807,8 @@ public class WindowManagerService extends IWindowManager.Stub
Log.i(TAG_WM, "SAFE MODE not enabled");
}
mPolicy.setSafeMode(mSafeMode);
- return mSafeMode;
+ // return mSafeMode;
+ return false;
}
public void displayReady() {