Saturday, December 15, 2012

Tweak: Install all Android apps on SD Card

Android is the leading Smartphone OS worldwide now. But one of its feature makes the user unhappy is the storage of its app on the internal storage thus disallowing the user to install more apps after that internal storage is full. The user is also not able to move the apps to the SD Card storage after the feature gets disabled. 
But, here is the solution to this problem without any root access required.
This tweak requires Android 2.2 or later. To change the default install location, you’ll need to use the ADB, or Android Debug Bridge, utility included with Google’s Android SDK.

Enable USB Debugging

First, you’ll need to enable USB debugging on your Android device. Open Settings>Applications>Development.
Tap the USB Debugging checkbox to enable it. This will enable debug mode, allowing you to change the settings on your Android device from your computer. You may want to disable debug mode after completing this process.

Install the Android SDK

You’ll need to download and install Google’s Android SDK on your computer. If you don’t already have Oracle’s Java JDK installed on your computer, you’ll have to download and install it before installing the Android SDK. (this process could annoy some users as a common user won't be needing Android SDK on his/her machine on a daily basis!!)
After you’ve installed both the JDK and Android SDK, launch the SDK Manager from your Start menu.
The ADB utility isn’t installed by default. It’s included in the Android SDK Platform-tools package – select this package and click the Install button to download and install it.
After the process completes, connect your Android device to your computer with its included USB cable. Windows should locate the device and install the appropriate drivers automatically. If it doesn’t, you may have to download and install the appropriate drivers from your Android device’s manufacturer. Do not mount the device after connecting it – just plug it in.

Using ADB

Open a Windows Explorer window and navigate to the android-sdk\platform-toolsfolder. On Windows, you’ll find this folder at C:\Program Files (x86)\Android\android-sdk\platform-tools by default. Check C:\Program Files\Android\android-sdk\platform-tools if you’re using a 32-bit version of Windows.
Launch a Command Prompt window in this folder by pressing and holding the Shift button, right-clicking in the folder, and selecting Open command window here.
Run the adb devices command and you should see your connected Android device.
Run the following command to set the default install location to your SD card:
adb shell pm setInstallLocation 2
If you want to revert this change later and install apps to the internal storage by default, run this command:
adb shell pm setInstallLocation 0
0 represents your device’s internal storage, and is the default. 2 represents the external storage, whether it’s an SD card or USB storage.

Moving Apps to SD Card

Apps that refused to leave your system storage can now be moved to the external storage. For instance, below you’ll see screenshots of the Slacker Radio app. Before the change was made, the Move to USB Storage button was grayed out. After the change was made, the button is enabled and the app can be moved.
Voila!!! You can now enjoy installing as many apps as you want on your external storage. But keep this in mind, even though your apps are getting installed on the external storage, they still occupy some part of the internal storage, so keep a check on number of hefty apps that you would be going to install. Enjoy..!!
After the tweak, here is the screenshot of my apps that I installed and started using which I wasn't able to until this tweak.