Move to SD Card doesn't move everything I have noticed that when I move apps to the SD card, it doesn't move everything. Is this a bug or a known behaviour or something weird going on with my phone?

Here's an example:


Start point: Phone free space: 18MB
Install Skype app: Phone free space: 3MB, Skype is apparently using 15MB for the App
Move Skype to SD Card: Phone free space: 8MB, Skype is now apparently using just 5MB for the App.


What appears to have happened is it's only moved some of the App, not the whole thing. It's a real pain for me as I have an HTC Desire, which doesn't have much internal memory (I live on the balance of the low memory warning). It's running the official HTC Gingerbread install...
Indeed, Android's native "Move to SD Card" does not move the entire app to the card.  Things like app's data, cache and dalvik-cache (optimized bytecode) are left on the device's internal memory.  You can try to mitigate this by regularly clearing out the cache of apps you use most often (e.g. Browser, etc.) by going to Menu -&gt; Settings -&gt; Applications -&gt; Manage applications -&gt; All, then selecting the app, and tapping the Clear cache button.  However, you will just be delaying the inevitable.

Also, the fact that not all apps support being moved to SD does not help the situation.  For example, widgets and sync adapters may not be moved to SD Card due to a limitation of Android.  Other apps simply have not been updated to support this functionality.

If your phone is rooted, you have more choice to mitigate this shortcoming.  First, some custom ROMs (e.g. CyanogenMod) allow you to move all non-system apps to the SD Card, even if they don't explicitly support this functionality (even Widgets can be moved, but will stop working after a reboot.)

There are also alternative "Apps to SD" solutions that can move all non-system apps to the SD Card on a rooted phone.  For example, the S2E app works wonders on CM ROM, and is very easy to install and use.  The DarkTremor A2SD script is a lot more difficult to set up and configure, but works on different custom ROMs.