Storing data on external SD Card in Android 4 (ICS) for Sony Xperia J? I searched the web and several forums, but still haven't found a good answer. 

I bought a Sony Xperia J. It's a pretty basic phone with Android 4 (ICS). It has 800 MB of Phone memory and 4 GB of Internal storage. I wanted to download Sygic navigation and the maps that I wanted to use. The phone said "not enough space" because Sygic wanted to use 2 GB and I had only 1.4 GB of my Internal storage available. 

I thought that if I bought at least 16 GB microSD card, that would solve the problem. No, it didn't, because the stupid phone won't install downloaded apps to the external card. My previous phone (Blackberry Curve) did it all automatically. I just inserted the SD card and the phone downloaded and installed all to the microSD card (I had just 2GB card, because it was enough). 

I can store music and pictures on my external card which I download to my phone via USB from my PC. But I want my phone to recognize the external card as an available space to download apps from Play Store and so on. 

How can I define my external card as the primary storage? I'm not an expert and I don't really want to root my phone if there's any other way. If the only way is to root it, can anyone write a step-by-step guide for Android ICS?

Thank you all in advance! :)
You can move the apps in your phone memory to your internal storage easily with your app settings. Goto Settings -&gt; Apps and select the apps you want to move. Then click the Move to internal storage button.



Or use an app like App to SD to do this conveniently.



If you want to make your SD card the default location, go through the below steps.


Install android SDK
Connect your device with USB debugging enabled
Run the command Cd C:android-Sdk-Windowsplatform-Tools in cmd
Enter the command adb devices and you should see your attached device listed on the screen.
Enter the command adb shell pm getInstallLocationwhich will show you the current value of InstallLocation of your device. It would be one among the following:


0 [Auto]: Let The Phone Decide The Best Location For An App
1 [Internal]: It Installs Everything In The Internal Storage
2 [External]: It Installs Everything In The Memory Card

Enter the command adb shell pm setInstallLocation 2 to change the install location to external memory.
If everything works fine, you would not see any message on the screen. You can now disconnect your device from the PC.


Refer this for more information and screencaps