Sunday, February 19, 2012

Installing custom ROM MIUI

After rooting the phone, now to install a custom ROM. There were many reviews on various ROM and so far, I have tried MIUI (did not bother testing others... MIUI did not give me a reason to leave, anyway :p)

Before you do anything "real" in wiping your current phone clean, it is always good to do backups. After all due diligence (backup contacts, pictures, music, SMSes, and whatever sort of data that is deemed important), you also may want to do a NAND backup of your stock ROM as well, in case you decided to revert back. To do this, I think the steps provided at http://theunlockr.com/2010/02/06/how-to-backup-and-restore-your-android-phone/ is quite complete.

So, to do the custom ROM installation:

1. First, download the ROM from http://miuiandroid.com and take a look at the list of supported device (for me, I download the ROM for HTC Desire).

2. Then, copy the the zip file of the ROM to the SD Card

3. Boot the phone into Recovery.

4. Wipe the data clean (both the user data (factory reset) as well as cache)

5. Install the "update" from SD Card.

Done!

* Sorry not able to put sample pictures here as this is a quick update.

Rooting Android

This was intended to be my first post, but over time, I really have forgotten how to root the phone and install a custom ROM... until today when my sister asked me to root her phone.

So, here are the resources I have used to root the phone.

Before I list the steps, it is really an odd thing when I thought I have had all the necessary drivers to the phone, but yet, I think I had the same troubles when I first rooted my phone.

First, I need to root the phone. Below are the sites / links which I viewed to know how to root the phone:

1. Check out this youtube video: http://www.youtube.com/watch?v=0JgsiexY7l0&feature=related. There are a lot of other videos, but I after running through a few, this looked decent enough.

2. The steps below (sourced from http://theunlockr.com/2010/09/20/how-to-root-the-htc-desire-unrevoked-method/) is helpful, but I suggest to follow this alongside with the youtube above.
-------------------------------------------------------------------------------------------------

1. Download the Unrevoked Rooting App
Unrevoked (Updated 09.20.10)*If the above version of Unrevoked doesn’t work, try this one, Unrevoked 3.31.
2. Double click the Unrevoked program you downloaded. If using Windows, then click on the file that appears called Hboot Driver and follow it’s instructions to install the modified HBoot drivers OR click here and download the drivers and install them manually.
3. Once the drivers are successfully installed, double click the Reflash program to open it.
4. Once the driver is successfully installed, turn off the phone by taking out the battery and putting it back in. Then push power to turn it on and get it to the normal home screen.
5. On your computer, right click the Reflash file and run as administrator. It should open Unrevoked and say “waiting for device”.
6. On your phone, click Menu > Settings > Applications > Development > and make sure USB Debugging is checked ON.
7. Plug in your phone into your computer via usb cable.
8. It should automatically locate your phone that is plugged in and you can just follow the prompts to continue.

9. Done! You are rooted and have a custom recovery image!
-------------------------------------------------------------------------------------------------
Do note however that both the times I have used Unrevoked latest app, it could not root my HTC Desire. After scourging the web (again!), the best Unrevoked version to root a HTC Desire is by using version 3.21. You can download the application at http://downloads.unrevoked.com/recovery/3.21/reflash_package.exe (source: http://androidforums.com/desire-all-things-root/221212-faq-rooting-updated-11th-november-2011-a.html)


Wednesday, February 8, 2012

How to Install Apps to the SD Card by Default (on Android 2.2 Froyo, and beyond... I think)

Source: http://androinica.com/2010/08/how-to-install-apps-to-the-sd-card-by-default-on-android-2-2-froyo/


To install an app to the SD card on Android Froyo, the application itself needs to support it. In my experience though, most current apps can be moved to the external storage. However, the Froyo system (works for my Gingerbread as well :)) installs all new applications on your device’s internal memory by default, except for those that explicitly request external installation. Luckily, it’s possible to make your Android 2.2 phone put apps on the SD card by default instead. Here’s how:


  1. First you have to enable USB debugging on your Android device from Settings > Applications > Development > USB debugging.
  2. Now you need to download and install the Android SDK on your computer from http://developer.android.com/sdk/. Once you’ve downloaded and extracted the package to the folder of your choice, run SDK Setup.exe and click on Available Packages to the left. If you get an error message at this point, enable “Force https://…” in the Settings. From the list of available packages, select “Usb Driver package”, click on the Install Selected button in the bottom right corner and follow the prompts. 
  3. Connect your phone to your computer with a USB-cable. Your OS will prompt you to install new drivers. Choose to install them from the android-sdk/usb_driver folder. Do not mount your device; you only need to plug-in the cable.
  4. Next, run a command prompt and navigate to the Android-SDK\platform-tools folder. In Windows, this is done by selecting Run from the Start Menu (or by pressing Win+R) and typing cmd. You change drives in the command prompt by entering the drive letter followed by a colon (:), and change folders with the CD command. For example, to enter the Android-SDK folder, simply type cd android-sdk.
  5. In the Android-SDK\platform-tools folder, type in adb devices and you should get a serial number starting with “H” in return. All you have to do next is entering adb shell pm setInstallLocation 2. VoilĂ , you’re done! Android will now install apps to the SD card by default.
  6. To switch back to storing software on the internal memory, enter adb shell pm setInstallLocation 0.


I should point out that it’s preferable to install certain apps to the main memory, since it will take a while before the SD card becomes available when you start your phone. Applications installed on the memory card will also be unavailable to the system each time you mount your phone as a disk drive. The internal storage is probably quicker as well, even though Google claims that “there is no effect on the application performance so long as the external storage is mounted on the device.” In general, apps that integrate with the Android OS and that often run in the background is better to install on the internal storage, while games and most other applications will have no problem chilling outside on your SD. Homescreen widgets should be installed to the internal storage as well. I noticed that LauncherPro, for example, won’t recognize widgets stored on the SD card when you start your phone, because when the app is launched, the memory card is still unavailable.

Based on my personal experience, apps that runs as a widget MUST be installed in the internal memory. If not, each time your phone restarts, all these widget will be missing and you can't even run them manually (as you don't see them in the apps drawer). The only place where you can see them is in the "manage application", which you can do nothing. In order to make sure your widget works, you may want to switch back to storing apps on internal memory, then install your widget app, and then switch back to install to SD Card by default.