Thursday, March 14, 2013

Negative effects of unlocked bootloader

Those who are expecting a little bit more from their HTC devices are familiar with HTC online tool to unlock the bootloader - htcdev.com. Once generated and flashed token via fastboot gives you possibility to change some of the partitions on HTC device. It sounds great, but there are some serious disadvantages of it. Some people may say this will result in limited warranty, which it is not true, and I explained that issue hereSo, what else to expect with unlocked bootloader?





First of all, not all the partitions will be unlocked. Forget about flashing hboot.img, rcdata.img or tp.img. Permission to fastboot flash will be denied. The only method to flash those images is to reboot device in RUU mode (fastboot oem rebootRUU) and flash originally signed firmware.zip (from OTA update) using fastboot flash zip firmware.zip command.

So what can be flashed in fastboot mode? Basically just 3 images - boot.img, recovery.img and system.img. Is it enough to flash custom ROM? Yes. With custom recovery you can flash zips or make nandroid backup. Is it enough to be happy? No. The problematic part is flashing boot.img in custom recovery. It's not possible on S-ON devices, unless your device is supported by 4EXT Recovery with SmartFlash feature. So the only method to have complete custom ROM working, is to flash ROM in recovery and then reboot the device, enter fastboot mode and flash boot.img using fastboot flash boot boot.img command.

The second problem of unlocked bootlader is even more serious, but so far it affects only 2 devices: HTC One X+ and HTC One. Those who used htcdev.com before probably noticed, that unlocking bootloader wipes user data, including content of virtual SD card (because virtual SD card = /data/media).

This is no surprise, because every user is warned about it and have a chance to step back. As long as all applications coming with stock ROM are stored on /system partition, there are no side effects. But for some very strange reason in HTC One X+ and HTC One, some of the stock applications like Flashlight, Calculator, Ringtone-trimmer, PDF Viewer, Teeter, Sound Recorder and more, are stored on /data partition instead. Result? After unlocking bootloader with official HTC tool you end up without having some of the basic HTC applications like Calculator or Flashlight, because /data partition (as mentioned above) has been wiped. System partition on HTC One is almost 2 GB big. Not enough to include few more .apk files?

What is more, missing stock applications on /data partition makes your device not capable to receive any OTA updates from HTC. Why? Because every OTA update checks MD5 checksum of every file that originally came with your device. So even if you didn't flash any custom ROM and your /system partition is unmodified, you won't be able to install OTA update.


This is an example of updater-script part from OTA:

assert(apply_patch_check("/data/preload/Calculator.apk","85aa7b00ec97ffe7179739c8815bf102c4f8666e","7055f0376e6b56be6414fdf8495b82db7fd38564")||apply_patch_check("/data/preload/Calculator.apk.uninstall","85aa7b00ec97ffe7179739c8815bf102c4f8666e","7055f0376e6b56be6414fdf8495b82db7fd38564"));

Once assert will fail, OTA update will cancel the installation process. I think every user should be warned, that unlocking bootloader results in no longer OTA updates support.

To summarize:
  1. Unlocked HTC devices via htcdev.com can't have boot.img flashed via custom recovery.
  2. Unlocked HTC One X+ and HTC One via htcdev.com will loose some basic HTC applications like Flashlight or Calculator.
  3. Unlocked HTC One X+ and HTC One via htcdev.com will loose possibility to receive OTA updates unless user will flash original RUU.exe, which are not officially available for customers.
Conclusion: Is it worth to buy HTC One? Yes! It is currently the best device on the market. If you are not planning to flash any custom ROM - don't unlock your bootloader. And if you want to flash custom ROM, it will probably contain missing applications anyway. This is far too great device and I believe HTCdev team will sort out above issues soon!

Got some questions or comments? Please feel free to leave them above! Also, if you like this article, please use media sharing buttons (Twitter, G+, Facebook) down this post!