Showing posts with label android. Show all posts
Showing posts with label android. Show all posts

Sunday, 5 February 2012

Installing Custom Android ROMs

My previous post discussed why and how to root your android phone.
An even older post looked at a test run of Android Ice Cream Sandwich

Do you want a more feature-rich, customisable, faster, better Android? Read on... 

Android phones are designed so that the Android system resides on what is called Read Only Memory (ROM), however once you have rooted your phone, (links to instructions can be found at the top of the article), you now have permission to overwrite the ROM on your phone. You will have to check online to see what ROM images are available for particular make and model of phone. There are hundreds of different ROM's floating around the Internet providing many different features. 

I have an 18 month old HTC desire and recently found an Android 4.0 ROM for it, with a few features cut back, which made my phone a lot faster and aesthetic, so I put that on just to give it a quick test run. But alas it is not stable and until it is, I am going to go for perhaps the most recommended and best supported custom ROM available, Cyanogenmod

As always, take precaution and back up your data. Upgrading the the ROM on your device will void your warranty and may cause hardware issues. Please research your specific make and model carefully to see if anyone else has had problems rooting and installing a ROM, as I cannot be held liable should anything go wrong. 

1. Research and get your ROM 
The very first thing I would suggest you do is to research a little about your device, see how well it is supported and if anyone has run into any issues whilst upgrading it. Cyanogenmod supports a huge number of phones and has an excellent wiki and forum. 

Next your phone needs to be rooted, so go and make sure you do that. A great resource for researching phone and ROM issues is the XDA developers forum

Go to the homepage for your ROM of choice and download the .zip file for the ROM for your phone and read any instructions/warnings provided. 

2. Install ROM Manager 
You will need to install ROM Manager from the android market, this is an app that lets you make backups of your ROM image and install new ROMs. Once installed, you will want to select the option to ‘Flash ClockworkMod Recovery’ - this is a lifesaver if the ROM does not install properly as it provides an interface to install ROMs and so on, before booting into the ROM (for my phone, I power down the phone and power back up whilst holding the volume-down button to access the hidden console, it should be the same for you but may vary depending on make and model). Google up on Clockworkmod recovery should you need to use it (hopefully you wont). 

3. Backup 
Backup!
At this point, and I cannot emphasise this enough, you need to backup your personal data - Flashing a ROM on your phone wipes out everything! Photo’s, videos, music, notes, contacts and any other files you put on your phone. This was quite easy for me, since most of my data (calendar/docs/contacts) is synced automatically to my google account and my multimedia synced with my dropbox. No cables needed :) 

It is also a good idea to backup a snapshot of your phones state (called a Nand backup) from within ROM manager; select ‘Backup Current ROM’ - this will make a byte for byte copy of your current ROM image from which you can restore your phone should things not go to plan. You will at this point want to connect your phone to your computer via USB cable and copy that backup folder to somewhere safe on your computer. 

4. Install the new ROM 
I wont cover formatting your SD card here, as Cyanogenmod doesn't require any complex partitioning to install, even for its apps2sd feature - but should you decide to install another ROM that does, use the ROM Managers partitioning feature - this will erase all data on the SD card. 

With your phone connected to your computer, copy the ROM zip file to the top level folder on your SD card. Finally using the ROM Manager, select ‘install ROM from SD card’ and choose your ROM, and let it do its thing. This may take a few minutes and then the first boot will take a few more minutes - but the wait will be worth it.


As always comments are welcome, let us know your thoughts on installing a custom ROM and about any problems, issues or successes you faced. 

Viva la Android - or rather ‘viva la Cyanogenmod!’

Tuesday, 31 January 2012

Rooting Android

My previous post on testing Android 4.0 generated a huge buzz (huge for this blog), so I thought I'd follow up on how to begin rooting and customising your phone

Warning: If you choose to root your phone, unlock the bootloader or install a custom ROM on it, be forewarned -  there is a minute chance that something may go wrong. Backing up your data is not optional, it is mandatory. Do it now, then backup your backup, and make a backup of that too. Also, this WILL void your warranty.

What is rooting and why I should do it?
Rooting (Apple users read: Jailbreak) is a term used to denote taking administrative control of your phone. A smart phone is akin to a modern computer, in that it has an Operating System and user accounts and account permissions that stop you from reading certain files and writing certain files - just as Microsoft windows or any other operating system does. Typically when your phone is switched on your logged in automatically (very much like a computer, without a login screen) to a normal user account, with a fwe restrictions on what parts of the phone you can make changes to. So gaining Root is like logging in to your phone with the admin account, you have full control of it and you can read system files and overwrite them - which will let us do some cool things, as we will see soon enough.

How is it done?
Typically someone has written a program for you, which you will download and put on your PC or laptop, then you connect your phone to your computer and and run the downloaded program. What happens in the background is the PC will run a (kind of) malicious program on your phone, that exploits a bug or flaw on your phone (this varies according to make and model of phone). But the exploit essentially grants higher privileges to whatever account is using the phone.

How is it done (step-by-step)?
I have used a few rooting applications and have had great success with unrevoked and revolutionary. Other tools to consider are SuperOneClick and UnlockRoot. UnlockRoot seems to support the most number of phones, so you may just want to stick with that. But read the forums to see if your chosen application supports your phone

HTC Super Tool - a great tool, designed just for HTC phones
Now, you will need USB drivers for your phone from the manufacturers website. In most cases, your phone will come with a CD with the drivers on it. Just google for the drivers if you do not have the CD.





 Next you will need to go to your phones settings menu and enable USB debugging, which for my phone is under Settings > Applications > Development

Enabling USB debugging mode
Connect the phone to your computer via the USB cable, run the program and your phone is now rooted.

So, what now?
Well with a rooted phone you have admin priveleges, so theres quite a bit you can do:
Install a custom ROM on there, to get additional features.
Overclock your phone to speed it up
Underclock the phone to conserve battery
Tether your data connection
Remove annoying pre-installed apps
Setup VPN and or TOR and other security features
plus loads more....

Next time I will walk you through downloading and installing a custom ROM for your phone. Ciao.

Sunday, 29 January 2012

A taste of Ice Cream Sandwich

Its no secret that I am a fan of Android, I like all things android. The open culture, the price, the apps, the ease of building for the system and the ability to mod the software and hardware to my hearts content. No other mobile platform provides any serious hacker with the ability to tinker with the system as much as Android does.

Sure, it has drawbacks too, and at some point in a future article, it would be good to compare the strengths and weaknesses of Android versus other mobile OS's.

Well anyhow, my HTC Desire GSM from mid 2010 was running the leedroid ROM for some time (I chose Leedroid after having experimented with both cyanogenmod and leedroid and decided I prefered the aesthetics of HTC sense). The stock ROM that came with my HTC desire didnt support moving apps to SD card, hence I decided to root the device and put a ROM on there that would allow me to install lots of apps without complaining about space. Leedroid had come to the end of its life, as there had been no update for a few months plus my phone was getting clogged up and needed some spring cleaning. So I thought I'd investigate what the Ice Cream Sandwich buzz was all about.

After a short google search, I found a beta version of ICS for the HTC desire. Stability was not promised, but I figured I would give it a go. Installation was easy as my phone was rooted, all I had to do was put the zip file on my SD card and boot into recovery and install it.

After a short while of playing around with it, I found that the new interface was a very welcome addition. The features that I liked best:
  • Lockscreen - can open up certain apps, like text messaging directly, so it saves a few taps on the screen, if u receive a message and want to check it.
  • Updated Marketplace - The new interface looks very nice, although the pricing for some of the content was disagreeable - classic books for example were pretty expensive, compared to what is available for free on project gutenberg.
  • Notification bar - This was pretty awesome. It lets you control many features of your phone directly, like sounds, music player, data connectivity as well as lets you see the notifications and clear them out with a very innovative slide (shame apple ripped this off completely for iOS5 and are now suing android for tonnes of other patent breaches)
  • Voice - The voice search is vastly improved and well integrated into the OS.
  • Interface lift - The interface was given a much needed uplift (so much that the default ICS interface pars well with HTC sense, my long time favourite look for android) - it has awesome animations, subtle interface tweaks and is so much smoother than before.
  • Settings - This part of the OS recieved a lot of love from the developers, and now includes a data monitoring section (I will be very sorry to see 3G watchdog go from my phone). Battery and memory information has nice graphical data to display usage, which is quite aesthtic.
Ive added a few screenshots of my experimentation below (click to enlarge thumbnails), for the full set of images, visit the album on my google+ account.

Overall, the new interface was much to my liking, the beta version meant that there were a few crashes, especially the camera app - which managed to take 2 pictures before crashing. I dont think this is ready for day to day usage, but its clearly on the way. Id be more than happy to put a more stable version on this and use it for a little longer, before making the jump to a newer handset.

For more details on how to install and run this yourself, use the comments below to direct specific questions at me.

I'll try and get a video of this up and running soon.