source from mobilesphonestar.com
Currently, many applications are available in the market so you can run out of internal storage just one day after you buy Android phones. The good news Froyo Android 2.2 features support for installing an application to the SD card. Unfortunately, the system Froyo installing all new applications on your device’s internal memory by default. To make your HTC Desire / Android 2.2 phone to place the application on the SD card by default, you need to follow these tips:
* First you have to enable USB debugging on your Android device from Settings > Applications > Development > USB debugging.
* 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.
* 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. If you are running Windows 7, UNPLUG your phone from PC, d/l the Android SDK kit but entirely skip the part with installing USB driver, instead just go to HTC page ( http://www.htc.com -> Support and find your product ) and d/l HTC Sync application, install it. Plug in the phone now, set connection type to synchronize and check if HTC Sync recognizes the phone, if yes, you are set (HTC Sync installs the needed ADB drivers under Win 7). All you need to do now is to enable the USB Debugging in your phone and set connection type to “Charge only” (tho it worked also with sync setting) and follow up rest of the tutorial.
* 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.
* 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.
* To switch back to storing software on the internal memory, enter adb shell pm setInstallLocation 0.
Note 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.