The HTC U12+ is the newly released flagship HTC device – It features the Qualcomm Snapdragon 845 SoC, 6GB of RAM, and 64GB / 128GB storage versions. One of the most interesting design changes on the HTC U12+ is the newly introduced “pressure sensitive” volume and power buttons – the device literally has no physical buttons, it responds to haptic feedback. Overall its quite a sexy device.
While it usually takes a while for brand new devices to be rooted (hello, Galaxy S8/S9), it seems the root community was super eager to get the HTC U12+ rooted, as there is a working root method using a custom kernel patch combined with Magisk. It also helps that HTC is dev-friendly (hello again, Samsung).
Follow this guide closely and your HTC U12+ will be rooted in no time.
Warning: This guide involves unlocking your bootloader, which will perform a factory reset on your device. Make sure you backup all important user data before proceeding!
- ADB Fastboot & Tools on your PC (see Appuals guide “How to Install ADB on Windows”)
- Magisk Manager
- HTC U12+ boot.img (choose the one that matches your firmware, you can check in Settings > About Phone)
First you need to unlock your bootloader – this is done through the official HTCDev.com website.
Register an account on HTCDev, then click “Unlock Bootloader” on the main page.
- From the “Supported Devices” dropdown menu, choose “All Other Supported Devices” (unless HTC U12+ was added after the time of this writing, choose that instead of course).
- Accept the popup boxes, and finally “Proceed to Unlock Instructions”.
- Now you’ll need to connect your HTC U12+ to your PC via USB and enable USB Debugging.
- Go into Settings > About Phone > tap Build Number 7 times until Developer Mode is activated.
- Now go to Settings > Developer Options > enable USB Debugging.
- Launch an ADB terminal on your computer (hold shift + right click inside your main ADB pathway and choose “Open a Command Window here”)
Now type the following command: adb devices
An ADB pairing dialogue should appear on your phone screen, so confirm it, and then in the ADB terminal type: fastboot oem get_identifier_token
This will return a long string of characters which you need to copy. Paste the characters into the My Device Identifier Token page on HTCDev and hit submit.
You’ll receive an email from HTC with a downloadable attachment called “Unlock_code.bin”, so download it and save it in your main ADB pathway.
In the ADB terminal, type: fastboot flash unlocktoken Unlock_code.bin
Follow the instructions on your phone screen to unlock the bootloader, and after your device resets, you’ll be back in Android.
Now you need to download the Magisk app and the boot.img for your current firmware.
Copy both files to your phone, and install the Magisk app.
Launch the Magisk app, and choose “Patch Boot.img” and select the boot.img file you downloaded.
After Magisk has patched the boot.img, launch an ADB terminal and type: adb pull /sdcard/MagiskManager/patched_boot.img
Then type: adb reboot bootloader
When you’re in the bootloader, it should tell you what active slot you’re on (A or B). Depending on the active slot, you want to type:
Fastboot flash boot_a patched_boot.img
Fastboot flash boot_b patched_boot.img
If the flash is successful, type: fastboot reboot
When your phone reboots into Android, your HTC U12+ should now be rooted!