MIUI9 安卓7.1 添加高级电源菜单

MIUI9 安卓7.1 添加高级电源菜单:为基于安卓7.1的MIUI9添加高级电源菜单,重启至Recovery模式和Fastboot模式

  1. 反编译 system/framework/services.jar
  2. 打开 com\android\server\policy/MiuiGlobalActions$1.smali
  3. 找到

    .method public onCommand(Ljava/lang/String;Ljava/lang/> Double;Ljava/lang/String;)V
    .
    .end method

  4. 将其替换为

.method public onCommand(Ljava/lang/String;Ljava/lang/Double;Ljava/lang/String;)V
.locals 5

const/4 v1, 0x0

const-string/jumbo v0, “airplane”

invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

move-result v0

if-eqz v0, :cond_1

iget-object v0, p0, Lcom/android/server/policy/MiuiGlobalActions$1;->this$0:Lcom/android/server/policy/MiuiGlobalActions;

const/16 v1, 0x9

invoke-static {v0, v1}, Lcom/android/server/policy/MiuiGlobalActions;->-wrap1(Lcom/android/server/policy/MiuiGlobalActions;I)V

:cond_0
:goto_0
return-void

:cond_1
const-string/jumbo v0, “silent”

invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

move-result v0

if-eqz v0, :cond_2

iget-object v0, p0, Lcom/android/server/policy/MiuiGlobalActions$1;->this$0:Lcom/android/server/policy/MiuiGlobalActions;

const/4 v1, 0x5

invoke-static {v0, v1}, Lcom/android/server/policy/MiuiGlobalActions;->-wrap1(Lcom/android/server/policy/MiuiGlobalActions;I)V

goto :goto_0

:cond_2
const-string/jumbo v0, “reboot”

invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

move-result v0

if-eqz v0, :cond_3

:try_start_0
invoke-static {}, Lcom/android/server/policy/MiuiGlobalActions;->-wrap0()Landroid/os/IPowerManager;

move-result-object v0

const/4 v1, 0x0

const/4 v2, 0x0

const/4 v3, 0x0

invoke-interface {v0, v1, v2, v3}, Landroid/os/IPowerManager;->reboot(ZLjava/lang/String;Z)V
:try_end_0
.catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0

goto :goto_0

:catch_0
move-exception v0

goto :goto_0

:cond_3
const-string/jumbo v0, “recovery”

invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

move-result v0

if-eqz v0, :cond_4

:try_start_1
invoke-static {}, Lcom/android/server/policy/MiuiGlobalActions;->-wrap0()Landroid/os/IPowerManager;

move-result-object v0

const/4 v1, 0x0

const-string v2, “recovery”

const/4 v3, 0x0

invoke-interface {v0, v1, v2, v3}, Landroid/os/IPowerManager;->reboot(ZLjava/lang/String;Z)V
:try_end_1
.catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_1} :catch_1

goto :goto_0

:catch_1
move-exception v0

goto :goto_0

:cond_4
const-string/jumbo v0, “bootloader”

invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

move-result v0

if-eqz v0, :cond_5

:try_start_2
invoke-static {}, Lcom/android/server/policy/MiuiGlobalActions;->-wrap0()Landroid/os/IPowerManager;

move-result-object v0

const/4 v1, 0x0

const-string v2, “bootloader”

const/4 v3, 0x0

invoke-interface {v0, v1, v2, v3}, Landroid/os/IPowerManager;->reboot(ZLjava/lang/String;Z)V
:try_end_2
.catch Landroid/os/RemoteException; {:try_start_2 .. :try_end_2} :catch_2

goto :goto_0

:catch_2
move-exception v0

goto :goto_0

:cond_5
const-string v0, “shutdown”

invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

move-result v0

if-eqz v0, :cond_6

new-instance v0, Lcom/android/server/policy/MiuiGlobalActions$1$1;

const-string v1, “ShutdownThread”

invoke-direct {v0, p0, v1}, Lcom/android/server/policy/MiuiGlobalActions$1$1;->(Lcom/android/server/policy/MiuiGlobalActions$1;Ljava/lang/String;)V

invoke-virtual {v0}, Lcom/android/server/policy/MiuiGlobalActions$1$1;->start()V

goto :goto_0

:cond_6
const-string v0, “dismiss”

invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

move-result v0

if-eqz v0, :cond_0

iget-object v0, p0, Lcom/android/server/policy/MiuiGlobalActions$1;->this$0:Lcom/android/server/policy/MiuiGlobalActions;

invoke-static {v0}, Lcom/android/server/policy/MiuiGlobalActions;->-get0(Lcom/android/server/policy/MiuiGlobalActions;)Landroid/os/Handler;

move-result-object v0

invoke-virtual {v0, v1}, Landroid/os/Handler;->sendEmptyMessage(I)Z

goto :goto_0

.end method

  1. 将本文提供的powermenu文件复制到”media/theme/default”下替换原文件,并设置权限为rw-r-r
    powermenu下载:百度网盘 密码: esyy
  2. 结束,重启生效。
文章目录
,