Internal memory of a smartphone Is it packed to capacity, but there is nowhere to install new applications? Transferring apps to SD card can be a lifesaver - especially for owners of budget devices with 16โ32 GB of internal memory. However, not everything is so simple: starting from Android 6.0 MarshmallowGoogle has tightened the rules for working with external drives, and many applications now refuse to move to the memory card. In this article we will analyze all current transfer methods - from standard tools to manual mounting via ADB, and also explain why some apps fundamentally do not want to move.
It is important to understand: even if you managed to migrate the application, its performance may fall by 20โ40% (test data on Samsung Galaxy A52 and Xiaomi Redmi Note 10 with class cards A1 and A2). This is due to the slower read/write speed of SD cards compared to built-in memory eMMC/UFS. However, for rarely used apps (for example, navigators or offline dictionaries), this method remains justified.
Why can't all applications be transferred to an SD card?
With Android 6.0 Google introduced the concept Adoptable Storage (attachable storage), which theoretically made it possible to combine the internal memory and SD card into a single partition. However, most manufacturers (with the exception Motorola and some models Nokia) have disabled this function at the firmware level. Today, the transfer of applications is limited by three key factors:
- ๐ Developer Policy: An application can block the transfer through its manifest (
android:installLocation="internalOnly"). This is typical for banking apps, instant messengers (WhatsApp, Telegram) and games with protection (Genshin Impact, PUBG Mobile). - ๐ฑ Android version: Starting from Android 9 Pie, the system by default hides the transfer option for most applications, even if it is technically possible.
- ๐พ SD card type: Class cards
C10or lower do not support the functionApp2SD. The minimum requirement isA1(random recording 1500 IOPS), and for comfortable work it is betterA2(4000 IOPS).
Manufacturers also impose their own restrictions. For example, Samsung has completely removed the option to transfer to One UI 3.0+ (based on Android 11), and Xiaomi allows this only for applications installed manually via APK. Check the compatibility of your device in the table below:
| Manufacturer | Transfer support | Features |
|---|---|---|
| Samsung | โ No (starting with One UI 3.0) | Previously supported on models up to Galaxy S9 |
| Xiaomi/Redmi/Poco | โ ๏ธ Partially | Only for APKs installed manually |
| Huawei/Honor | โ Yes (EMUI 9โ11) | Requires formatting the card as internal storage |
| Realme/Oppo | โ Yes (ColorOS 7+) | The option is hidden in the "Applications" menu |
| Google Pixel | โ No | Exception - Pixel 3a with Android 10 |
โ ๏ธ Attention: If your device does not support transfer through standard settings, do not rush to use workarounds (for example, ADB or root access). On some firmware, this can lead to application failure or even data loss on the SD card.
Method 1: Standard transfer through Android settings
This is the simplest method, but it only works on devices with Android 8.0 Oreo and lower, as well as on some custom firmware (for example, LineageOS). Instructions:
- Open
Settings โ Applications. - Select the desired application (for example, Google Maps).
- Click
StorageโChangeโSD card. - Confirm the transfer and wait for completion (may take up to 5 minutes).
If the option Edit is inactive or missing, it means:
- ๐ซ The application is blocked for transfer (see section above).
- ๐ต Your SD card is formatted as portable storage (you need to make it internal).
- ๐ You have a new version of Android (9.0+), where the option is hidden.
Format the card as internal storage (Settings โ Storage โ SD card โ Three dots โ Settings โ Internal memory)|
Check the card class (must be A1/A2)|
Create a backup copy of the data on the card (they will be erased when formatted)|
Reboot the device after formatting-->
On some devices (for example, Huawei Mate 20 Pro), the transfer option appears only after formatting the card as internal storage. Please note that after this the card cannot be removed without losing data - it will become part of the system.
Method 2: Transfer via ADB (without root access)
If the standard method does not work, but you have access to ADB (Android Debug Bridge), you can try a forced transfer. This method is suitable for Android 6.0โ12.0 and does not require root access, but does not work with all applications.
You will need:
- ๐ฅ๏ธ A computer with drivers installed ADB (you can download it at Android Studio or separately).
- ๐ฑ Enabled USB debugging on the phone (
Settings โ About phone โ Build number(press 7 times) โDeveloper Settings โ USB Debugging). - ๐พ SD card formatted as Internal storage.
Steps:
- Connect the phone to the PC and open the command line (
cmdon Windows orTerminalon macOS/Linux). - Enter the command to test the connection:
adb devicesThe name of your device should appear.
- Find out the batch name of the application (for example, for Facebook this
com.facebook.katana).You can do this through App Inspector or the command:adb shell pm list packages | grep "application_name" - Execute the transfer command (replace
package.namewith the real name):adb shell pm set-install-location 2Then:
adb shell pm move-package package.name
If the command completed successfully, you will see a message SuccessHowever, many applications (especially system ones) will return an error Failure [INSTALL_FAILED_INVALID_INSTALL_LOCATION] - this means that the transfer. blocked.
Before using ADB, check whether your device supports the command pm move-package. On some firmware (for example MIUI 13it is disabled, and you will need an alternative method with root access.
โ ๏ธ Attention: Forced transfer viaADBmay lead to unstable operation of the application or its refusal to start. This is especially true for games with protection (Among Us, Clash of Clans) and apps that useOBB files(for example, Asphalt 9).
Method 3: Using root access and Link2SD
If the previous methods did not work, and you have root access, you can use the application Link2SDIt allows you not only to transfer applications, but also to create symbolic links (symlink) to. SD card, saving space in the internal memory.
Instructions:
- Install Link2SD from Google Play (root required).
- When you first start the app, you will be prompted to select the file system type for the second partition on the SD card. The best option is
ext4(if the card supports it). - Restart the device.
- In the list of applications, select the one you need and press
Create link(orMove to SD cardif available).
Link2SD also allows:
- ๐ Transfer
OBB filesand game cache (for example, for GTA San Andreas or Minecraft). - ๐ Automatically clear cache and unnecessary files.
- ๐ ๏ธ Freeze system applications (be careful - this may disrupt the operation of the OS!).
Disadvantages of the method:
- ๐ Requires root access (risk of losing warranty and security).
- ๐ข Possible lags when launching transferred applications.
- ๐จ Some banking applications (Sberbank Online, Tinkoff) refuse to work on rooted ones devices.
What to do if Link2SD does not see the second partition?
If Link2SD it gives the error "Second partition not found", then your SD card is not divided into sections. Use the app MiniTool Partition Wizard on your PC to create a second partition in format ext4 (size - 1-2 GB). After that, repeat the setup in Link2SD.
Method 4: Transfer via custom firmware (Magisk, Xposed)
For advanced users who are willing to sacrifice stability for additional space, there are radical methods:
- ForceAllowAppOnExternal (module for Magisk): allows you to bypass restrictions
android:installLocationand force the transfer of any applications. Installed via Magisk Manager. - XInternalSD (module for Xposed): replaces the path to the internal memory on the path to the SD card. Risky - can lead to data loss.
- App2SD (firmware for TWRP): creates a link between internal memory and SD card at the kernel level. Requires an unlocked bootloader.
These methods provide maximum freedom, but have critical disadvantages:
- ๐ง Difficulty in setting up (requires knowledge in
ADB,TWRP,fastboot). - ๐ Risk of "bricking" the device (especially on Samsung s
Knox). - ๐ Incompatibility with Android 12+ (many modules have not yet been updated).
โ ๏ธ Attention: The use of custom firmware and modules Magisk/Xposed may lead to Blocking banking applications (due to trigger SafetyNet) and Loss of OTA updates from the manufacturer.
Standard Android settings|
ADB (without root)|
Link2SD (with root)|
Custom firmware (Magisk/Xposed)|
I havenโt tried anything, Iโm just reading -->
How to transfer games with OBB files to an SD card?
Many games (for example, Call of Duty Mobile or FIFA Mobile) take up gigabytes not only because of the APK itself, but also because of OBB files (additional data). You can transfer them manually:
- Connect the phone to the PC and turn on the mode
File transfer (MTP). - Go to the folder
Android/obb/on the internal memory. - Copy the folder with the name of the game (for example,
com.activision.callofduty.shooter) to the SD card in the same directory (Android/obb/). - Delete the original folder from the internal memory.
- Create a symbolic link (requires root or Termux):
ln -s /storage/XXXX-XXXX/Android/obb/com.game.package /sdcard/Android/obb/com.game.package(replace
XXXX-XXXXwith the real ID of your SD card).
For games with cache (folder Android/data/) the process is similar, but keep in mind:
- ๐ฎ Some games (PUBG Mobile, Free Fire) check the integrity of the files and can reload the data at startup.
- ๐ After updating the game
OBB filesthey can be downloaded into the internal memory again.
Symbolic links (symlink) are the most a reliable way to transfer OBB files, but they only work on rooted devices or through Termux with superuser rights.
What to do if the transferred application does not work?
If after the transfer the app gives errors ("Application not installed", "Stopped"), try the following steps:
- Clear cache:
Settings โ Applications โ [name] โ Memory โ Clear cache. - Reinstall the application: sometimes uninstalling and re-installing with transfer to SD card.
- Check the rights: some applications require permission to access the storage (
android.permission.WRITE_EXTERNAL_STORAGE). - Roll back to internal memory: if all else fails, return the application back.
Typical errors and their causes:
| Error | Cause | Solution |
|---|---|---|
INSTALL_FAILED_INVALID_INSTALL_LOCATION | Application blocked for transfer | Use Link2SD or refuse transfer |
App not installed | Damaged files on the SD card | Format the card in FAT32 or exFAT |
| The application crashes at startup | Slow SD card (lower class A1) | Replace the card with a faster one |
SafetyNet error | Transferring a banking application on a rooted device | Use MagiskHide or rollback root |
If the problem persists, check the SD card for errors using the app SD Card Tester (available in Google Play). Damaged sectors can cause the transferred applications to malfunction.
FAQ: Frequently asked questions about transferring applications to SD card
Is it possible to transfer WhatsApp to an SD card?
No, WhatsApp blocks transfer via manifest (internalOnlyHowever, you can:
- ๐ Manually move). folder
WhatsApp/(with backups) to the SD card and create a symbolic link (root required). - ๐ Use the function
Backupin Google Drive to free up space.
โ ๏ธ Transferring chats without a correct symbolic link will lead to loss of messages!
Why does the game slow down after the transfer?
Speed reading/writing of SD cards (even class A2) is 3-5 times lower than that of the built-in memory UFS 2.1/3.0. To reduce lag:
- ๐ฏ Close background applications before starting the game.
- ๐ Transfer only
OBB files, leaving the APK in the internal memory. - ๐พ Use cards
A2with a real random write speed of at least 4000 IOPS (for example, SanDisk Extreme or Samsung Pro Endurance).
Is it possible to transfer system applications?
Technically yes, but:
- ๐จ This may break the operation of the OS (for example, transfer Google Play Services will lead to system crash).
- ๐ง Requires root and file editing
/system/app/or/system/priv-app/. - ๐ After updating Android, system applications will return to their place.
We recommend transferring only user apps.
How to transfer applications to an SD card in Android 13?
Q Android 13 Google has completely removed support for transferring through standard settings:
- ๐ฑ Use
ADB(see Method 2), but many commands are blocked. - ๐ Install custom firmware (for example, LineageOS), where the function is returned.
- ๐พ Transfer only
OBB filesand the cache manually (see Method 5).
Which SD card should you choose to transfer applications?
Minimum requirements:
- ๐ Speed class:
A1orA2(for games - onlyA2). - ๐ Capacity: from 64 GB (cards smaller than 32 GB often do not support
ext4). - ๐ Manufacturer: SanDisk, Samsung, Kingston (avoid no-name cards - they can fake the class speed).
To test real speed, use A1 SD Bench (available in Google Play).