[Other Tools & General Discussion] Techno'CRACKS':
This feature is now native in Android 6.0, just follow the below steps to turn External SD card into Internal storage on Marshmallow

Go to “Settings” --> then select “Storage”.

Select SD Card and then tap the menu button on top-right corner or your native menu button and select “Settings” from there.

Select “Format as Internal”

Select “Erase & Format”.

Wait for some time as your SD card will be formatted.

Reboot the device.

The below method no longer work on any of the new devices running KitKat and later. Please don't use this method anymore else you would mess up your storage system :o​

EDIT: This doesn't seem to work on SAMSUNG devices so please don't try on them. This works on most of the MediaTek devices and few Sony devices. If you were able to successfully swap please mention your device name.Don't forget to read the warning.

Warning: Please do a complete CWM Backup of your device, so that if anything goes wrong you can revert back to original state. Please don't blame me if you forget to do a complete CWM Backup

I have a phone with me Xperia J and it has only 2 GB of Internal memory for apps but data for few HD games like NFSMW is 1.8 GB i.e nearly 2 GB and if I paste the data in external SD then it will not be detected, then how can we install and play these HD games on devices like these?

The only solution to this is swapping Android's external and internal SD cards so that I can get my SD card's size as internal memory.

Discliamer:I am not responsible if you mess up with your phone, for bricked phones and dead sd cards. Try this on your own risk.

Then how can we do this?

Its very simple by modifying the code in vold.fstab file which is present in ext folder of Android's system folder.

This file so called vold.fstab has mounting information for the device to mount the SD cards so change the code to swap the SD cards so that ext_card will be mounted as sdcard and sdcard will be mounted as ext_card.

Note: This will work on any Android phone with internal and external SD cards.

Here is the procedure with an example I have done on Xperia J's vold.fstab file.

1. First of all your phone must be ROOTED, If its not then STOP here and get the Root first.

2. Download Root Explorer or any other such explorer which can explore root directory of device.

3. Navigate to system/etc folder mount it as rw(read/write).

4. There you will find vold.fstab file, copy it to your sdcard.

5. Then in your PC open the file in an Text Editor.

6. Find the lines like these,

dev_mount sdcard /mnt/sdcard emmc@fat /devices/platform/goldfish_mmc.0 /devices/platform/mtk-sd.0/mmc_host
dev_mount sdcard2 /mnt/ext_card auto /devices/platform/goldfish_mmc.1 /devices/platform/mtk-sd.1/mmc_host

7. Replace sdcard with ext_card and ext_card with sdcard in those two lines.

8. Again navigate to system/etc change the name of the current vold.fstab file to vold.fstab.old (backup).

9. Paste the new edited vold.fstab file there and long press on it you will get a menu from there change the permissions to "rw_r_ _r_ _" this is important.

10. Reboot the system.

11. If you want to restore changes, delete the edited vold.fstab file and rename the vold.fstab.old file as vold.fstab and reboot.

All the best.