Affiliate Disclosure: By buying the products we recommend, you help keep the lights on at MakeUseOf. Read more.
If you’ve ever rooted your Android phone, you’ve almost certainly encountered ADB and Fastboot. These utilities are an important part of the rooting toolkit. Yet they’ve always been strangely hard to get hold of, only available with the full Android SDK that measures several hundred megabytes in size.
Now, for the first time, Google has made the ADB and Fastboot tools available to download on their own. Click here to download them, and you’re good to go.
If you’re wondering what exactly ADB and Fastboot are, need help setting them up, or would like some ideas for things you can do with them, read on.
What Are ADB and Fastboot?
ADB and Fastboot are utilities that unlock access to the Android system while your phone is connected to a desktop computer via a USB cable. The computer and cable are integral to this — there’s no app version, and while you can do ADB wirelessly, it’s much more complicated to set up.
ADB is normally used when Android is running. It enables you to access system folders, or tweak hidden settings, which are otherwise off limits to users. You can copy system files to and from the device using ADB, and there’s also a sideload function that can be used to install system updates.
Fastboot works when Android is not running, and the device is booted into “Fastboot mode”. It enables you to access all your device’s partitions — not just the Android system, but also the data partition, the boot partition, and so on.
Fastboot is a diagnostic tool. It’s essential if your phone fails to boot for some reason. It’s most commonly used to install a custom recovery.
Both tools are controlled with the Command Prompt on Windows, or Terminal on Mac and Linux. This means they aren’t especially user friendly, even though they are quite easy to get the hang of.
How to Set Up and Use ADB and Fastboot
First, you need to set up your phone to use the tools. If you haven’t already, enable the Developer options by going to Settings > About phone and tapping on Build number seven times.
Then, in Settings > Developer options check the box next to USB debugging and click through the dialog box that follows.
Download ADB and Fastboot from the Android Developer website. When you unzip the download, the contents will be collected together into a folder called platform-tools. There are several other items in the folder, but you can ignore these. Neither app needs to be installed.
If you’re on Windows, you will also need to download drivers for your device. There’s a list of links for most popular manufacturers on the Android developer website. Alternatively, you can try the 15 Seconds ADB Installer app from xda-developers.com. Drivers aren’t needed on Mac or Linux.
Using the Command Prompt or Terminal
Open the Command Prompt or Terminal app. You will need to navigate to the platform-tools folder in order to use ADB and fastboot.
Do this using the cd command: enter cd [path to platform-tools]. An easier way is to type cd[space] then drag the platform-tools folder into the command prompt window — it will autofill the path for you.
Easier still, on Windows you can shift and right-click the platform-tools folder and select Open Command Prompt Here.
The Difference Between Windows and Mac/Linux
There’s one small but essential difference between using Windows and Mac or Linux. On the latter two, every ADB and Fastboot command must be preceded by a dot-slash.
So, where you type ADB on Windows, you must type ./adb on Mac and Linux. And fastboot on Windows needs to be ./fastboot on Mac and Linux.
For the sake of simplicity we’ll stick with the Windows commands for the rest of this article.
Boot your phone into Android, then connect it to your desktop computer with a USB cable. On your computer, launch the command prompt and change the directory to point to the platform-tools folder.
Type adb devices and hit Enter. You should now see a list of attached devices, with a serial number. This shows that it is working.
That’s all there is to it: type adb followed by the command you wish to execute. For another simple example enter adb reboot to restart your phone.
Fastboot works the same way as ADB, except the phone needs to be booted into Fastboot mode instead of Android. This is usually done by holding a combination of the power and volume keys when turning on the phone. Alternatively, use ADB and type adb reboot bootloader.
After that it’s the same. Enter fastboot devices to check that your phone is being recognized. Enter fastboot reboot to relaunch Android.
Things You Can Try
Now that you know how to use ADB and Fastboot, what can you do with them? Here are a few things to try.
- adb pull [path to file] [path to folder] This copies a file stored anywhere on your phone, and saves it to a specified folder on your computer.
- adb push [path to file] [path to folder] The opposite of pull. Send a file from your desktop to your phone.
- adb install [path to file] Installs an APK app on your phone. Of most use to app developers.
- adb uninstall [package name] Uninstalls an app. You need to enter the full package name — usually something along the lines of com.devname.appname — instead of the app name.
- adb shell wm density [dpi] Changes the pixel density of your display. A lower number fits more content onto the screen — a higher number less. For example, the OnePlus 3 has a native DPI of 480. Setting it to 400 makes text, icons, and everything else smaller.
- adb sideload [path to update.zip] Sideloads an update.zip firmware update. This one runs via the custom recovery on your phone. Useful if you can’t wait for an update to be pushed to your device.
- fastboot oem unlock OR fastboot flashing unlock Which command you should use depends on which version of Android you’re running. On Android 6 and above you also need to enable OEM unlocking in Developer options. Unlocking the bootloader this way wipes your phone completely.
- fastboot flash recovery [filename.img] Installs a custom recovery, such as TWRP, on your device. For ease of use we suggest changing the recovery filename to something easy — twrp.img, for instance — and moving it into the platform-tools folder.
- fastboot -w Completely wipes your phone in preparation for flashing a custom ROM.
- fastboot update [path to rom.zip] Flashes a custom ROM. A useful option if you haven’t rooted your phone.
Why You Should Learn ADB and Fastboot
Obviously, the commands above are for basic guidance only. They may not all work on all devices. You should only use them if you understand what they will do, and how to undo any changes that they make.
ADB and Fastboot are essential parts of the rooting and modding game. Learning how to use them is important and will help you make use of more advanced mods.
Do you use ADB and Fastboot? What are your experiences with it, and do you have any tips of your own? Share your thoughts in the comments.