One of the best things that could happen to a smart phone owner is the variety of applications (both paid and free) available. Android Market has a huge catalogue of applications that fit your every need. The bad part is running out of space on your phone – most of these applications directly install on to the phone memory and not to your memory card.
A few applications provide a feature where you can move them to the SD card [Application Manager, Select Application, and Select 'Move to SD Card'] and free up space on your phone memory. Some of the applications can not be moved, as the button is not disabled. If your phone runs OEM firmware, it will have a lot of crapware that you can’t uninstall or move to SD card. Also, one has A2SD (Apps 2 SD), which involves creating an EXT3 partition on your memory card. Though rooting is easy, most people don’t do it. So here’s a simple trick that you can use, without rooting your phone, to move all your applications to the SD Card, and this also ensures that whatever new applications you install, go directly to your memory card, thereby saving precious phone memory.
First, you would need to Download the Android SDK kit and tools. This is free, and don’t worry – we will not be writing any code. The kit contains a few essential tools that we need to set our preferences. Extract the contents of the ZIP file. Now here are the steps:
1. Set your phone on USB Debugging mode [Settings, Programs, Development Settings, USB Debugging - Select this option if it is not selected already]
2. Open a terminal shell (On Windows, open a command prompt session), and navigate to ‘Tools’ folder in the extracted contents.
3. Type “adb shell” (On Windows) ["./adb shell" on Linux/Mac systems]
4. If you set the phone in the correct mode, you will get a ‘#’ prompt.
5. On the prompt, type
pm setInstallLocation 2
6. Wait for the ‘#’ prompt to appear. Type ‘exit’ to quit adb prompt. You can exit the shell window now.
You’re done. You will be able to move most of the applications to SD Card now. All new applications that are installed will go directly to the SD card.
A few things to take care of:
1. If the application provides Widgets and you use them, DO NOT move them to SD card – the widgets will not function correctly if you move them to the SD Card. If it provides Widgets, and you are not going to use them, or the app does not provide widgets, it is safe to move them.
2. If you’re planning to root your phone using Unrevoked Forever, you will have to reset the default install location to phone memory (Details on that below).
Restoring the install location back to phone memory:
Follow the steps listed above, when you get to Step 5, use this command instead:
pm setInstallLocation 0
This will not void your phone warranty, your phone does not need to be rooted. I’ve checked this with FroYo (Android 2.2) and Gingerbread (Android 2.3) and it works beautifully.
1. I did not discover this method. Most websites talk about moving apps to memory card, but do not talk about how to restore it back in the same page. Also the note on being unable to use Unrevoked Forever for rooting is missing. It took me a while to figure it out that I couldn’t root my phone because the apps were being installed on my memory card, and to use Unrevoked Forever, you have to reset this.
2. I’ve done this several times, never facing any problems. If you do follow the steps mentioned here to the ‘T’ and end up screwing up your phone, I can not be held responsible.