На смартфонах Huawei с EMUI и HarmonyOS стандартная функция форматирования SD-карты во внутреннюю память (Adoptable Storage) отключена производителем на системном уровне. Это означает, что в меню Настройки → Память вы не найдете пункта «Форматировать как внутреннюю память», который есть на чистом Android. В результате Google Play Store принудительно скачивает все новые приложения только во встроенное хранилище, игнорируя внешнюю карту.
Ситуация усугубляется тем, что даже ручной перенос уже установленных программ через Настройки → Приложения → [Приложение] → Память → Изменить часто недоступен для игр и крупных сервисов — кнопка просто неактивна. Разработчики блокируют перенос через манифест приложения (android:installLocation), а системная оболочка Huawei не предоставляет инструментов для принудительного изменения политики установки без вмешательства в системные разделы.
Почему Huawei убрал поддержку Adoptable Storage
Компания приняла решение отказаться от технологии «принятой памяти» еще в EMUI 9.0, мотивируя это рисками потери данных и падением производительности. Медленные карты памяти класса 4 или 6 создавали «узкое горлышко» при чтении/записи, из-за чего интерфейс лагал, а приложения вылетали. В HarmonyOS эта политика сохранена: слот microSD позиционируется исключительно как накопитель для медиафайлов, документов и резервных копий, но не для исполняемого кода.
Технически раздел /data/app, куда устанавливаются APK-файлы, физически находится в eMMC/UFS памяти телефона. Монтирование внешней карты в этот раздел требует шифрования и постоянного присутствия карты в слоте. Извлечение карты при таком сценарии ломает работу системы, поэтому инженеров Huawei решили исключить этот сценарий для массового пользователя.
Способ 1: Принудительное включение Adoptable Storage через ADB (требует ПК)
Это единственный рабочий метод заставить Google Play качать приложения напрямую на SD-карту, делая её частью системного хранилища. Для этого нужна отладка по USB, компьютер и знание идентификатора диска. После выполнения карта зашифруется, станет нечитаемой на ПК и других телефонах, а её извлечение вызовет сбой работы смартфона до перезагрузки.
Инструкция подходит для моделей на Kirin 970/980/990 и новее (серии P30, P40, Mate 30/40, nova 7/8/9/10/11/12). На чипах Kirin 710/960 и старее команда может вернуть ошибку Partition not found из-за особенностей разметки eMMC. Перед стартом обязательно сделайте бэкап данных с карты — они будут безвозвратно удалены.
☑️ Подготовка к включению Adoptable Storage через ADB
⚠️ Внимание: После форматирования карты как внутренней памяти вы не сможете просто вынуть её и вставить в кардридер для чтения фото. Все данные зашифруются ключом, привязанным к конкретному экземпляру процессора и прошивке. При сбросе настроек телефона или прошивке доступ к данным на карте будет утерян навсегда.
Пошаговая процедура выглядит так:
- Подключите телефон к ПК кабелем, выберите «Передача файлов» (MTP).
- В терминале (PowerShell/CMD) в папке Platform Tools выполните:
adb shell. - Узнайте ID диска командой:
sm list-disks. Ответ будет видаdisk:179,64. - Выполните форматирование:
sm partition disk:179,64 private(замените ID на свой). - Дождитесь завершения (обычно 10–30 секунд), перезагрузите телефон.
После перезагрузки в настройках памяти карта отобразится как «Внутренняя общая память», а суммарный объем увеличится. Google Play начнет скачивать новые приложения туда по умолчанию, так как система видит единый пул.
Этот метод физически объединяет встроенную память и SD-карту в один логический том. Система сама решает, куда писать данные, но приоритет отдается внешнему носителю, если он быстрый (UHS-I U3/V30).
Способ 2: Ручной перенос совместимых приложений после установки
Если риск шифрования карты недопустим, остается вариант переноса поштучно. Зайдите в Настройки → Приложения → Все приложения, выберите нужную программу, откройте «Память» и нажмите «Изменить» → «SD-карта». Важно: это работает только если разработчик разрешил перенос в манифесте (android:installLocation="auto" или "preferExternal").
По статистике, около 60% приложений из каталога Google Play имеют эту опцию отключенной. Банковские клиенты, системные утилиты, виджеты, клавиатуры и приложения с сервисами фоновой синхронизации почти никогда не позволяют уйти на внешний носитель. Игры тяжелого веса (Genshin Impact, PUBG, CoD Mobile) также блокируют перенос из-за требований к скорости IOPS.
Как проверить, можно ли перенести конкретное приложение без ADB
Включите «Для разработчиков» → «Принудительно разрешить приложениям находиться на внешнем носителе» (Force allow apps on external). После этого зайдите в настройки приложения — если кнопка «Изменить» стала активной, перенос возможен. Если нет — приложение жестко забито под internal-only. Эта настройка сбрасывается после перезагрузки на некоторых версиях EMUI.
Для удобства можно использовать сторонние файловые менеджеры (например, Solid Explorer или Total Commander), которые показывают реальный путь установки: /data/app/~~package_name==/base.apk — во внутренней памяти, или /mnt/expand/.../package_name — на SD. Это быстрее, чем лазить в системных меню.
Способ 3: Настройка загрузки кэша и данных игр (OBB) на SD-карту
Многие тяжелые игры качают небольшой APK (50–100 МБ) в память телефона, а затем при первом запуске скачивают гигабайты кэша (OBB) в папку /Android/obb/. Этот процесс контролирует не Google Play, а сама игра. В настройках некоторых игр (например, в линейке Gameloft или настройках движка Unity) можно выбрать путь сохранения кэша — укажите /storage/XXXX-XXXX/Android/obb/ (где XXXX-XXXX — UUID вашей карты).
Также можно вручную перенести папку obb после скачивания: остановите загрузку в игре, выйдите, перенесите папку игры из Внутренняя память/Android/obb/ в SD-карта/Android/obb/ через «Файлы» или ПК, затем запустите игру снова. Большинство современных тайтлов корректно подхватят файлы по новому пути.
⚠️ Внимание: Не переносите папку/Android/data/целиком — в ней хранятся авторизационные токены, настройки аккаунтов и локальные базы данных. Их перемещение часто приводит к выходу из аккаунтов, потере прогресса в офлайн-играх и ошибкам синхронизации облачных сохранений. Переносите только конкретные папки внутриobbили медиа-контент.
Таблица: Сравнение методов загрузки на SD-карту
| Метод | Требует ПК/Root | Риск потери данных | Совместимость с Google Play | Сложность |
|---|---|---|---|---|
| ADB Adoptable Storage | ПК (ADB) | Высокий (при извлечении карты) | 100% (качает сразу на карту) | Средняя |
| Ручной перенос (Настройки) | Нет | Низкий | Частичная (только если dev разрешил) | Низкая |
| Force allow apps (Dev options) | Нет | Низкий | Расширяет список переносимых | Низкая |
| Перенос OBB/Data вручную | Нет | Средний (ошибки путей) | Не влияет на APK, только кэш | Высокая |
| Смена пути загрузки в настройках игры | Нет | Низкий | Только для конкретных игр | Средняя |
Частые ошибки и их решение
Ошибка «Недостаточно места на устройстве» при свободном месте на SD-карте означает, что Google Play пишет во внутреннюю память, а она забита. Проверьте займёте ли место кэш Play Market (Настройки → Приложения → Google Play → Память → Очистить кэш), а также папку /data/app-lib/ — там могут висеть «призраки» удаленных программ.
Если после включения Adoptable Storage через ADB телефон перестал видеть карту или уходит в бутлуп — скорее всего, карта не прошла тест скорости (минимальный порог ~10 МБ/с случайной записи 4К). Вернитесь в recovery (Power + Vol Up) и сделайте Wipe data/factory reset, либо прошейте сток через HiSuite. Карту после неудачного Adoptable Storage можно вернуть к жизни только полным форматированием в FAT32/exFAT на ПК (SD Formatter), но данные не спасти.
Купите карту с классом скорости Application Performance Class 1 (A1) или A2 (например, SanDisk Extreme Pro, Samsung PRO Endurance). Они гарантируют минимальные IOPS для работы приложений. Обычные «фото-карты» Class 10/U3 дают высокую последовательную скорость, но проваливаются на случайных операциях, из-за чего интерфейс начинает тормозить.
Нюансы для планшетов Huawei MatePad и серии Nova
На планшетах MatePad (HarmonyOS 2/3/4) меню разработчика скрыто глубже: Настройки → О планшете → Версия → Нажмите 7 раз на «Номер сборки». Опция «Force allow apps on external» там работает стабильнее, чем на телефонах, так как планшеты чаще используются как медиа-станции с постоянной картой.
В серии Nova (бюджетный сегмент) слот часто гибридный (SIM 2 / microSD). Если вы используете две сим-карты, слот под память занят. В этом случае единственный вариант — облачные хранилища или OTG-флешка. Google Play не умеет качать на USB-накопители напрямую, но можно скачать APK на флешку через браузер и установить вручную (включив «Установку из неизвестных источников» для файлового менеджера).
Что делать, если SD-карта медленная или неисправна
Симптомы: приложения висят на загрузке, иконки пропадают из лаунчера после перезагрузки, система выдает «SD-карта извлечена» при нагрузке. Сначала проверьте контакты — протрите их спиртом. Затем запустите тест скорости утилитой A1 SD Bench или SD Card Speed Tester из Play Market. Если случайная запись 4К ниже 5 МБ/с — карта не подходит для приложений, используйте её только под фото/видео.
На смартфонах с HarmonyOS 4.0+ появилась диагностика носителя: Настройки → Память → SD-карта → Проверить накопитель. Она сканирует на bad-блоки и ошибки файловой системы. Если тест провален — меняйте карту. Попытки «починить» через chkdsk на ПК часто маскируют проблему, но не решают деградацию ячеек NAND.
⚠️ Внимание: Не используйте карты памяти без бренда («No Name») или подделки SanDisk/Samsung с маркетплейсов. Их контроллеры лгут о объеме (реально 8 ГБ вместо заявленных 128 ГБ), и при записи за пределы реальной памяти данные безмолвно теряются. Google Play не проверит целостность APK после такой записи — приложение просто не установится или будет крашиться при старте.
FAQ: Ответы на частые вопросы
Можно ли вернуть SD-карту в обычный режим после Adoptable Storage без ПК?
Нет. Телефон не предлагает кнопку «Отформатировать как портативную» для зашифрованной карты. Нужно подключить карту к ПК через кардридер, удалить все разделы в «Управлении дисками» (diskmgmt.msc) и создать новый том exFAT/FAT32. Либо использовать утилиту SD Card Formatter.
Почему после переноса приложения на SD оно исчезает после перезагрузки?
Система монтирует SD-карту позже, чем запускает лаунчер. Если приложение установлено на карту, его иконка не найдется при старте рабочего стола. Лечится перезагрузкой лаунчера (долгое нажатие на пустом месте → Настройки → Перезапуск) или отключением автозапуска тяжелых сервисов в Менеджере телефона → Оптимизация → Автозапуск.
Обновления приложений будут качаться на SD, если включен Adoptable Storage?
Да. После объединения томов Google Play видит единое пространство. Обновления скачиваются в тот же раздел, где стоит база приложения. Если база на SD (что происходит автоматически при свободном месте), и обновление пойдет туда.
Работает ли это на Honor 90 / 200 / Magic 6?
На Honor (MagicOS 7/8/9) архитектура та же: Adoptable Storage скрыт, включается только через ADB. Но на новых флагманах с UFS 4.0 и 256/512 ГБ встроенной памяти необходимость в этом отпадает. На младших моделях (Honor X серии) слот часто гибридный — проверяйте перед покупкой карты.
Можно ли установить Google Play сам на SD-карту?
Нет. Сервисы Google Play Services и сам магазин — системные приложения (/product/app или /system_ext/app). Они защищены dm-verity и не подлежат переносу ни через настройки, ни через ADB (без рута и модификации системного раздела). Только пользовательские приложения.