129

How do I halt an android phone using adb command? I can reboot, but I don't know how to halt.

I tried shutdown -k wait command, but it did not work.

6 Answers 6

186

Try adb shell reboot -p to shutdown the phone.

11
  • 54
    For those who wonder what the "p" stands for: it's short for --poweroff :)
    – Izzy
    Commented Jun 26, 2013 at 7:15
  • 7
    it would have been better unix way: "shutdown" for shutdown and "shutdown -r" for reboot Commented Oct 3, 2013 at 14:22
  • 8
    Try adb reboot -p (leave out shell).
    – Caleb Xu
    Commented Mar 9, 2015 at 1:07
  • 4
    reboot -p only reboots my tablet. Doesn't shutdown.
    – JohnyTex
    Commented Dec 27, 2016 at 13:03
  • 1
    How did you find out? It's not mentioned in the official doc: developer.android.com/studio/command-line/adb
    – minipif
    Commented Jan 22, 2019 at 1:22
30

Note: All the following commands below require root access.

On Android Oreo, this works and does a graceful shutdown:

adb shell su -c 'am start -a com.android.internal.intent.action.REQUEST_SHUTDOWN'
adb shell su -c 'am start -n android/com.android.internal.app.ShutdownActivity'  #alternative; the aforesaid intent is supposed to be passed to this component under normal circumstances, but calling the component alone works too
adb shell su -c 'svc power shutdown'       # alternative; tested on Android 5.0, 6.0.1 and 8.1.0

Following is an alternative and is tested on Android 4.2, 5.0 and 6.0.1. I do not know about Nougat but it doesn't work for Oreo though.

adb shell su -c 'am start -a android.intent.action.ACTION_REQUEST_SHUTDOWN --ez KEY_CONFIRM true --activity-clear-task'   # I kept this here for historical purposes only.

For low-level and instant shutdown

If you're running Android KitKat or above* and have root access, you can try this command:

adb shell su -c 'setprop sys.powerctl reboot,recovery'
  • replace su -c with adb shell to run the command using
  • replace reboot,recovery with reboot to reboot the device
  • replace reboot,recovery with shutdown to shutdown the device

* The last version on which the command is tested upon is stock Android 6.0.1.

1
  • "setprop sys.powerctl reboot,recovery" worked for me. Thanks!
    – spica
    Commented Jan 17, 2019 at 3:35
6

Here is another method - go to Android's shell, then shutdown the phone:

adb shell
shutdown

Using C:\Windows\system32\cmd.exe:

Microsoft Windows [Version 6.3.9600]
<c> 2013 Microsoft Corporation. All rights reserved.

C:\Users\Mahdi> adb shell
root@android:/ # shutdown
shutdown
3
  • 2
    Doesn't work for me though. Nexus 4 on Lollipop 5.0.1 (rooted, even after using su), or LG P705 on ICS 4.0.3 (unrooted). I wonder if it's related to ADB version or not (mine's 1.0.32).
    – Andrew T.
    Commented Jan 30, 2015 at 5:51
  • 1
    Doesn't work for me on an MIUI Redmi 3. "shutdown: not found". Commented Dec 14, 2016 at 3:18
  • This is not a standard command
    – Rolf
    Commented Jul 6, 2019 at 16:23
4

In the Windows Subsystem for Android (WSA) shutdown doesn't work. Instead, try doing

adb shell reboot -p

or

adb shell
reboot -p
PS E:\platform-tools> .\adb.exe devices
List of devices attached
localhost:58526 device

PS E:\platform-tools> .\adb.exe shell
windows_x86_64:/ $ shutdown
/system/bin/sh: shutdown: inaccessible or not found 127
windows_x86_64:/ $ reboot -p
Done
windows_x86_64:/ $
PS E:\platform-tools> .\adb.exe devices
List of devices attached
localhost:58526 offline
0

To shutdown the phone use this command on PC:

adb shell halt
1
  • 2
    Doesn't work on stock 5.0 Galaxy S5 & 5.1 nexus 7, Interestingly when run in CM12 Reboot process asked for superuser access and works in CM12
    – Manu
    Commented Sep 26, 2015 at 16:28
-1

Try

adb shell "input keyevent 26"

It's work for me.

1
  • 4
    That would put the device to sleep mode or would awake it. 26 is keyevent for power key. This cannot shutdown the phone.
    – Firelord
    Commented Jan 10, 2023 at 7:37

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .