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! :)


6 Answers 6


You can move the apps in your phone memory to your internal storage easily with your app settings. Goto Settings -> 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.

  1. Install android SDK
  2. Connect your device with USB debugging enabled
  3. Run the command Cd C:android-Sdk-Windowsplatform-Tools in cmd
  4. Enter the command adb devices and you should see your attached device listed on the screen.
  5. 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
  6. Enter the command adb shell pm setInstallLocation 2 to change the install location to external memory.

  7. 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

  • Sid, that would only affect apps installed -- and only if the devs explicitly permitted that in their Manifest, and did not specify any other storage as "preferred".
    – Izzy
    Commented Jan 21, 2013 at 10:46
  • @Izzy there are two methods mentioned. Are you referring to both? :O
    – Sid
    Commented Jan 21, 2013 at 11:09
  • I referred to the adb shell pm getInstallLocationwhich (2nd method) -- but this also applies to the 1st method: if the dev did not permit the install-location for his app, you can't move it there.
    – Izzy
    Commented Jan 21, 2013 at 12:11
  • I know about the option "move to internal storage" but that is the problem. I already have apps in this storage, but I'm running out of space, because of all the installed apps and other stuff. My question is how to move it all (or install automatically) to the addittional SD card I bought. I've already set camera to store pictures on SD card, but apps don't see to have the same option. The only thing I can actually do, is move apps from phone memory to internal memory (still built in memory in the phone) and back. Not to the SD card.
    – Rita
    Commented Jan 21, 2013 at 18:10
  • @Rita you want to move apps from one card to another (internal SD card to an external SD card) right? Is there a way to plug an external card into the phone?
    – Sid
    Commented Jan 22, 2013 at 1:17

I have a workaround that does not require ROOT, at least for your issue with Sygic. I just used it on my husband's new XPeria J to move Sygic to his external SD, because we had exactly the same issue as @Rita.

Install FX File Manager from the App store. Then simply cut & paste the Sygix folder from Main Storage to ext_card. I had my doubts that the app would work after that, but it does!

The original shortcut Sygic installs still opens the program ok & even better, any new maps you download will go into the Sygic folder on the ext_card - so no more filling up that 2GB internal SD.

It doesn't solve the issue of making the ext_card the default, but if you are wary of ROOTing your phone, it is a good alternative.

  • this app 'FX file manager' is not available currently on the App store.
    – ThePhi
    Commented Apr 16, 2019 at 12:26

Until there is a real answer, some hints to, hm, other solutions:

A thread at DroidRzr.com mentions how to Mod External Sd Card To Be Primary. The initial post speaks of a "flashable ZIP", but unfortunately gives no link to it. Further down in the very same thread is a short how-to for rooted users, a similar one can be found at the XDA forum:

  1. mount /system read-write
  2. use a file editor to navigate to /system/etc
  3. locate vold.fstab, make a backup of it (copy it to your card, or copy it to something like vold.fstab.orig), and open it with an editor
  4. scroll down to the line saying # external sd card
  5. below that, change the line reading dev_mount sdcard-ext /mnt/sdcard-ext: to dev_mount sdcard /mnt/sdcard:
  6. scroll further don to # internal eMMC
  7. below that, change the line dev_mount sdcard /mnt/sdcard:: to dev_mount sdcard-ext /mnt/sdcard-ext::
  8. reboot

Now you should have swapped the internal and external card, and the latter should be used by default -- as it was with previous Android versions.

Warning: I have not tried this myself (did not yet succeed in rooting my tablet -- and my phones still run Gingerbread), so do it on your own risk! I will not be liable to... whatever, you know the disclaimer. However, the worst I can imagine happening is that it would not work, and you would neither see your internal nor your external card anymore. In that case, simply restore your backed-up original vold.fstab, and you should return to the state you've started with.


Also for rooted users, but easier to use: On the playstore you can find apps like ICS SD Binder1 and Root External 2 Internal SD2, which should apply above steps automatically (click image to enlarge):

ICS SD Binder External 2 Internal SD


You would need to Root your Android in order to be able to do this. Once done, you can Link, Map, Move Internal SdCard App Folders to External

This works for any app, game folders. If you know linux, it create symlinks.


You don't need to do all that rooting business. Just download an app such as Astro Cloud for free, and using that you just move whatever file, video, music etc that you want in a copy and paste way to your ext SD. In Astro Cloud it explains how to do it. Its really easy to use.


Sony has launched a new line of USB flash drives designed to work with smartphones and tablets as well as PCs. On one end there’s a full-sized USB connector which you can plug into a desktop or notebook. But if you lift the cap, you’ll find it’s hiding a tiny micro USB connector.

enter image description here

You can plug the micro USB connector into most Android phones or tablets and the drive will show up as external storage, allowing you to copy files to and from your mobile device. Then you can plug the other end of the flash drive into your PC.

Currently the drives only work for devices running Android 4.0.3-4.3, but support for Android 4.4 is being addressed. The drives come in 8, 16, and 32GB variants.

Read more here.

Alternatively if your phone has Root, then you maybe interested in Meenova.

This comprehensive review entitled "The Meenova Micro-SD Card Reader for Android" will provide more info, as will this Video Review.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .