This guide is adapted from here for the initial rooting and here for the app removal. If you follow this guide and break your phone I can’t help you. All the following actions should be taken with the knowledge that it is at your own risk and will void your warranty. For that matter Sprint may send an army of ninjas after you. Don’t say you weren’t warned….
This guide assumes a base install of Ubuntu 9.10 but should work for previous versions. If you know enough to have changed your download directory then you know enough to modify the following commands.
- Download the Android SDK
- Download asroot2
- Download the recovery image
- Extract the SDK into your home directory
tar -xzvf ~/Downloads/android-sdk_r3-linux.tgz -C ~
- Copy the other two files into the newly created android-sdk directory
cp ~/Downloads/asroot2 ~/android-sdk-linux/
cp ~/Downloads/recovery-RA-heroc-v1.2.3.img ~/android-sdk-linux/
- Turn on USB debugging on your phone: Menu -> Settings -> Applications -> Development -> USB Debugging
- Connect your phone to your computer with a USB cable
Now in normal circumstances I would never recommend you “become” root as it’s generally not necessary but my attempts to root the phone did not work with sudo so for the next steps you will need to actually be the root user.
Rooting the phone:
- Become root
sudo su -
- cd to your the directory created when you un-tarred the SDK
- Copy asroot2 to your phone, change the permissions to make it executable, execute asroot2
./adb push ../asroot2 /data/local/
./adb shell chmod 0755 /data/local/asroot2
./adb shell /data/local/asroot2 /system/bin/sh
- Now we will use the access asroot2 has given up to create a su binary for root access
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
cat sh > su
chmod 4755 su
If all has gone well you should now have a root prompt “#” instead of “$”. If you don’t then ask over at the first link in this post for help. I didn’t do any of the development on this I am merely giving the steps that worked for me. Now it’s time to flash a new recovery image so we can take a backup of the phone before we start screwing around. These steps are from the android-sdk-linux/tools directory you were in before. If you already exited your android shell bring it back up with ./adb shell and type su to get your root prompt.
- Reboot your phone. Yes this is a necessary step. The recovery image won’t flash if you don’t so this.
- Copy the recovery image to your phone once it has booted
./adb push ../recovery-RA-heroc-v1.2.3.img /sdcard/
- Connect to the shell on your phone and flash the recovery image
flash_image recovery /sdcard/recovery-RA-heroc-v1.2.3.img
- Reboot into recovery mode and take a Nandroid backup before you do anything else
- Once the recovery screen has come up take a backup, make sure you have enough free space on your sd card before you do this, so that when you screw up your phone you will be able to restore it. Once you get bored in the recovery image select the top option to boot the phone into your regular HTC Sense environment.
I received no output from the command to flash the recovery image and it took less than two seconds once I had rebooted the phone. If you do not reboot the phone prior to the above steps you will most likely see Out of memory errors. If you see them even after a reboot then uninstall all your silly little app market playthings and try again. If you play around and screw up your phone without a backup then you’ll have to track down a recovery image or single apps and so on. Once again I WILL NOT HELP YOU WITH THIS.
Removing the stock Sprint Apps:
Simply connect to your phone with the SDK, become root, and remove the files from /system/app
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
At this point you will have a list of all the stock crap on your screen. If you go about removing stuff you may screw up your phone. That’s what the backup we took earlier was for. Don’t think you made a backup with app store app so you are alright. Do the nandroid backup. Don’t be an idiot about this.
To remove an app simply use the rm command. The following commands remove Sprint NFL, Sprint Nascar, Peep, Footprints, and Sprint Stock, the stock music program (if you are using something else), and Quick Office
There’s a list of apps and some more description here on XDA Developers.
Like I said: This is NOT my work. I merely typed up all of the steps and put them in a single place. All thanks should go to the folks who posted the threads and risked bricking their devices to make this possible!
For the record I love my HTC Hero and wouldn’t trade it for anything on the market right now. I have some complaints but I have had complaints about every phone I have ever owned. This is mostly a post about what I think it missing or wrong. I don’t want anyone thinking I don’t like my phone, on the contrary, I am hoping that someone might know of apps in the Android Market that will take care of the issues I have or some tweak somewhere I have missed.
- The Hero is missing a “Mark All As Read” button for e-mail accounts.
This was a feature they took out in the WinMo client between my last two phones which I added back with a hack because I don’t like being without it. I get a LOT of e-mail and like to read the things I want to see and mark the others read all at once. I haven’t found a way to do this yet and it bugs me.
- Notifications seem to be impossible to distinguish.
On WinMo and even other phones I could set different notifications for e-mail, SMS, MMS, GTalk, and so on. So far it appears these are all covered under “Notification”. I would like much more granular control over these.
- Task Management sort of sucks.
This could be because of HTC’s interface but TasKiller kills the whole interface and is, in essence, a warm reboot. Task Manager is decent and I haven’t tried any of the pay apps yet so maybe there’s still something out there that is better.
- Lack of features in widgets.
This is not a phone issue this is development issues. I want to ba able to have multiple calendar widgets, up to one per google calendar if I desire and the “Android” widget forgets which calendar it is displaying if the phone powers off and the “HTC” widget doesn’t allow different settings for different instances.
- Location based profiles
Need more stuff to do this. I want to change the theme for the HTC Sense interface based on time and/or GPS location. Locale does a great job with volume, wi-fi, backgrounds, and all of that but I want a complete theme change and it’s not there yet.
So that’s my list. The on-screen keyboard isn’t as fast as the my old slider and since it’s flat I can’t type without looking yet but it’s not horrible enough that I will want to trade out for the Samsung that Sprint is releasing on the 1′st of November.
And yes Trevor I could maybe code some of this myself and maybe I will!
Coming to you live from my new HTC Hero. The onscreen keyboard is taking some getting used to and I had to turn off that psycho text prediction/correction crap but it’s not too bad. The calendar sync is about as nice as it gets and the HTC interface can change based on location. I am off to play with this thimg some more. While I won’t be typing novel length posts this one was posted using a cool free app from the Android Market. So far I was right: I love this phone and I haven’t even rooted it yet!