Объединение флешки и памяти телефона. Как перенести приложения с внутренней памяти на SD-карту в Android

Пожалуй, главная и самая заметная фишка нового Android 6.0 Marshmallow для обывателей - возможность отформатировать карту памяти microSD в качестве внутреннего накопителя . Анонс этоу функции, как и ожидалось, многих впечатлил, однако ни Nexus 5X от LG, ни Nexus 6P от Huawei не имели возможности расширения памяти с помощью карты памяти, поэтому об этом на несколько месяцев просто забыли.

Сейчас же, в марте-апреле 2016 года, начали выходить новые флагманы на Android 6.0 Marshmallow (Samsung Galaxy S7 и S7 edge, вскоре появится в России и LG G5), а другие смартфоны начали получать обновление до этой версии системы - проблема вновь стала актуальна.

Скоростные классы устройства также можно найти на карте памяти: C4 или C10 (Class 10), либо UHS Speed Class 1 (U1), UHS Speed Class 3 (U3)


Стоит сразу отметить, что форматировать карту памяти в качестве внутреннего накопителя можно далеко не каждую. Нужно обратить внимание на небольшую греческую цифру "I" прямо на карте. Она означает, что это карта типа Ultra High Speed (UHS-I). Важно заметить, что тип карты UHS-I поддерживает большое количество скоростных классов, в том числе Class 4 (C4), Class 10 (C10), U1 и U3. Чем выше скорость, тем не хуже, поскольку это в случае использования карты памяти как внутреннего накопителя (Format as Internal Drive) может влиять на скорость работы приложений.

Греческая цифра на microSD означает Ultra High Speed - UHS-I или UHS-II тип карты памяти. Последний имеет два ряда контактов и не поддерживается современными смартфонами.


Но главное не в этом. Дело в том, что производители крайне сильно пекутся о скорости работы своей системы и отсутствии тормозов и постоянно жалуются именно на карты памяти, которые вставляют пользователи в смартфон. Несмотря на то, что подавляющее большинство сегодняшних карт памяти на рынке поддерживают UHS-I и вполне проходят по скорости, крупные бренды просто забили на эту важную фишку. В качестве обоснования приводится тот факт, что внутренний накопитель в современных смартфонах все равно работает быстрее карт памяти.

При этом на рынке крайне трудно найти неподходящую флешку, да и не стоят они дорого: для примера за 300 рублей уже сегодня можно купить UHS-I карту памяти со скоростным классом 10 (С10) и объемом 16 ГБ.


Но... у крупных брендов есть свое мнение и клиенты, которых они, видимо, не хотят разочаровать. Поэтому, внимание, возможность форматировать microSD карту памяти, как внутренний накопитель (смонтировать microSD как внутренний накопитель) отсутствует у Samsung Galaxy S7 и Galaxy S7 edge, флагмана LG G5. Но на этом история не заканчивается, проблема внутреннего накопителя довольно остро стоит у Sony Xperia (в Xperia Z3 Compact пользователь довольствуется 16 ГБ встроенной памяти). С обновлением до Android 6.0 Marshmallow проблема могла быть решена, но Sony Mobile также решили закрыть возможность форматирования microSD как внутреннего накопителя на своих смартфонах.

Так выглядит возможность форматирования microSD как внутреннего накопителя в смартфоне Moto X Force


Неутешительные итоги


Пользователи смартфонов Samsung, LG и Sony Xperia лишены возможности расширить память даже при наличии карты памяти нужного типа. Справедливости ради стоит сказать, что данную возможность можно открыть, если сделать ROOT-устройства, но мы в данном случае обсуждаем то, что пользователь получает "из коробки". На данный момент из устройств, получивших обновление до Android 6.0 Marshmallow, возможность расширения внутренней памяти с помощью microSD доступна на смартфонах Moto (и видимо будет доступна на Lenovo и ZUK), а также у устройств HTC. По поводу Huawei и Honor пока неизвестно, поскольку эти устройства пока не получают обновления до Android 6.0.

Остаётся только сожалеть о том, что крупные компании (занимающие достаточно большую долю на российском рынке) взяли на себя такую ответственность и решили попросту убрать интересную и важную фишку, вместо того, чтобы лишний раз объяснить пользователям о различиях карт памяти и просто рекомендовать скоростные классы и типа накопителей microSD.

Проблема нехватки памяти – одна из основоположных как для ПК, так и для мобильных устройств. При малом количестве свободной памяти система обычно начинает подтормаживать, подвисать, работает нестабильно и ненадёжно. Особенно актуально это для Андроид-устройств, многие из которых изначально обладают довольно небольшим объёмом основной памяти (т.н. «Internal Storage»). В такой ситуации у некоторых пользователей может возникнуть идея попробовать использовать внешнюю SD-карту в качестве основной памяти на их Андроид-устройстве. В данном материале я расскажу, как SD-карту сделать основной памятью на гаджетах Андроид, и какие способы нам в этом помогут.

Разбираем, как SD-карту сделать основной памятью на Андроид

Для осуществления данной задачи вам понадобится скоростная SD-карта (желательно, 10 класса или быстрее). Карты 6, а особенно 4 и 2 классов для таких целей не пригодны, ваша система вследствие их использования существенно замедлит свою работу, что вряд ли понравится кому-то из пользователей.

Также важно понимать, что срок действия такой SD-карты вследствие активной на неё нагрузки будет существенно меньше, нежели если бы нагрузка на карту проходила в стандартном режиме.


Способ №1. Изменяем содержимое файла Vold.fstab

Первый из описанных способов предполагает изменение содержимого файла системных настроек «Vold.fstab». После осуществления указанных изменений ОС Андроид будет считать вашу SD-карту внутренней памятью устройства, при этом учтите, что ряд установленных ранее приложений могут перестать работать.

Важно знать, что данный способ работает только на рутированных устройствах, на которых установлена ОС Андроид ниже (!) , нежели версия 4.4.2. В версиях ОС Андроид 4.4.2 и выше указанный файл, скорее всего, вы попросту не найдёте.

Также учтите, что ошибка в реализации данного способа (в частности, добавление в нужные строки лишних символов) может самым печальным образом сказаться на работоспособности вашего устройства. Потому тщательно взвесьте возможные риски, и если, всё-таки, приняли решение, тогда приступайте к его реализации.

Итак, для осуществления данного способа выполните следующее:

Например, это могут быть такие строки:

  • dev_mount sdcard/storage/sdcard0 emmc@xxxxxx
  • dev_mount sdcard2/storage/sdcard1 auto/xxxxxx

Для осуществления нужных изменений нам необходимо поменять путь в указанных строках местами, то есть, проще говоря, вместо 0 поставьте единичку в первой строке, а во второй вместо 1 поставьте 0.

После изменений эти строки будут иметь вид:

  • dev_mount sdcard/storage/sdcard1 emmc@xxxxxx
  • dev_mount sdcard2/storage/sdcard0 auto/xxxxx

Сохраните произведёнными вами изменения, а затем перезагрузите гаджет.

Ещё один вариант как сделать карту памяти основной на андроид:


Способ №2. Используем настройки ОС Андроид 6.0 и выше

Кроме первого способа, в котором я рассмотрел, как переключить память телефона на карту памяти, существует и другой способ, работающий только на настройках ОС Андроид 6.0 (Marshmallow) или выше, и позволяющий задействовать SD-карту как основную для сохранения файлов и работы с ними. Для его реализации рекомендую сделать копию данных с вашей SD-карты (если таковые на ней имеются), так как данная карта будет отформатирована системой.

В некоторых устройствах Android есть слоты для карт памяти (как правило, формата microSD). Если устройство поддерживает SD-карты, вы можете:

  • увеличить объем памяти;
  • использовать карту для работы некоторых функций и приложений.

Чтобы узнать, есть ли у вашего устройства слот для SD-карты, посетите сайт производителя .

Примечание. Некоторые из этих действий можно выполнить только на устройствах с Android 6.0 и более поздними версиями.

Как установить SD-карту

Шаг 1. Вставьте SD-карту.
  1. Уточните, где находится слот для SD-карты.
  2. Выключите телефон.
  3. Извлеките лоток SD-карты или снимите заднюю крышку устройства (в зависимости от модели). При необходимости поднимите язычок, удерживающий карту.
  4. Поместите SD-карту в слот. Если вы подняли удерживающий язычок, опустите его.
  5. Установите обратно лоток SD-карты или заднюю крышку устройства.
Шаг 2. Включите SD-карту.
  1. Дождитесь появления уведомления об SD-карте.
  2. Нажмите Настроить .
  3. Выберите нужный тип хранилища.
    • Съемный накопитель:
      Карту можно переносить на другое устройство вместе со всеми файлами (например, фотографиями и музыкой). Приложения на съемный накопитель перемещать нельзя.
    • Внутренняя память:
      На карте можно хранить приложения и данные только для этого устройства. Если вы переместите ее на другое устройство, все данные с нее будут удалены.
  4. Чтобы настроить SD-карту, следуйте инструкциям на экране.
  5. По завершении нажмите Готово .

Как использовать SD-карту

Как переместить приложения на SD-карту

Если вы подключили карту в качестве внутренней памяти, можно перенести приложения на нее.

Примечание. Не все приложения можно перенести SD-карту.

Как переместить файлы на SD-карту

Если вы установили SD-карту в качестве съемного накопителя, то можете перенести на нее различные файлы, например музыку и фотографии. После этого их можно удалить из внутренней памяти устройства.

Шаг 1. Скопируйте файлы на SD-карту.

Шаг 2. Удалите файлы с внутреннего накопителя.

Вы можете посмотреть содержимое SD-карты и узнать, сколько места осталось.

Если SD-карта используется в качестве внутреннего накопителя

Если SD-карта используется в качестве съемного накопителя

  1. Проведите по экрану сверху вниз, чтобы открыть панель уведомлений.
  2. Под уведомлением об SD-карте нажмите Открыть .

Сразу оговорюсь, что речь пойдет не о программах типа link2sd. Принцип похож, но связывать мы будем не программные каталоги, а каталоги данных этих программ, например /sdcard2/Navigon -> /sdcard/Navigon или /mnt/extSdCard/Books -> /sdcard/Books и т.д.
Кроме того, нам нужен рут (куда ж без него). Кстати, после того как я узнал про эту программу, это для меня очередной аргумент за root.

Многие владельцы андроид смартфонов или таблеток с небольшей встроеной памятью наверняка сталкивались со следущей проблемой: вставлена большая sd карта (например 16, 32 или даже 64 Гигабайт), но после установки нескольких тяжеловесных программ наше устройство или очередная программа с наглостью заявляет, что на карте не хватает места. Иногда сама программа небольшая, но после установки лезет в интернет и тянет на смартфон гигабайты данных.
В очередной раз получив сообщение «Нет места» и заглянув на карточку видим, что она практически пуста, зато внутренняя память устройства забита под завязку.
Это происходит потому, что внутренняя память часто используется как каталог по умолчанию для многих программ. Дело в том, что она монтируется как /sdcard , что исторически всегда было внешней sd картой (раньше так оно и было на всех смартфонах). Внешняя же sd карта монтируется в этом случае как /sdcard2 , /mnt/sdcard2 , /mnt/extSdCard или даже /sdcard/.externalSD . Я так понимаю, что это делается изготовителями, чтобы устройство работало из коробки, т.е. совсем без sd карты.

Многие «недобросовестные» программы всегда хотят читать/писать данные из/в каталог /sdcard/НазваниеПодставить. Редко это можно изменить в настройках программы.
В результате имеем, что имеем, и несколько возможностей чтобы поправить сложившееся положение:
Два последних способа тоже не являются панацеей, т.к. требуют определенных навыков от пользователя, кроме того не достаточно «чисты», например известны проблемы при подключении смартфона к компьютеру через usb (не отмонтируются) и т.д.

Поправить положение поможет программа DirectoryBind , которую хороший человек slig из xda написал для себя и выложил на форуме для всеобщего пользования.

QR-код


Хоть публика здесь технически подкованная, но для неискушенных читателей хабра нужно сделать пару пояснений. Как он сам написал (программа not idiot-proof), т.е. врядли пройдет тест на дурака.

После установки запускаем программу (первый раз естественно навечно разрешаем права Root), нажимаем меню затем «Preferences» и выставляем пути по умолчанию на внешнюю память «Default data path» например /sdcard/external_sd/ и внутреннюю память «Default target path» /sdcard/ . Выходим из меню.

Нажимаем меню, затем «Add new entry»

Теперь создадим новую связь каталогов, например перенесем папку CamScanner на внешнюю карту. Долгое нажатие на путь к папкам открывает небольшой встроеный файловый менеджер, в котором можно создать и/или выбрать папку. Папка на внешней карте должна быть создана (и пуста).

Установив галочку в «Transfer files from target to data» файлы и папки будут перенесены из каталога /sdcard/CamScanner/ в каталог /sdcard/external_sd/CamScanner .

Нужно заметить, что связи после создания не активируются автоматически (серая иконка дискеты, как на скрине внизу для gameloft). Для завершения связывания папок, выбираем галочками нужные связи и нажимаем меню -> «Bind checked». Иконки активных (связанных) папок должны стать зелеными.

Кстати если вы хотите присоединить еще и всю внешнюю карточку полностью рекомендую это сделать не так /sdcard/externalSD/ , а с точкой впереди /sdcard/.externalSD/ . Это спасет вас от таких неприятностей как двойные превьюшки в галереях, и т.д. Правда поможет не для всех галерей и плееров, т.к. некоторые ищут медиа и в скрытых каталогах.
Помучившись, я для себя решил, связывать только отдельные каталоги.

UPD. Кстати, внешняя SD карта значительно медленнее внутренней памяти, поэтому перенос данных программы на внешнюю SD, естественно замедляет работу этой программы. Это особенно нужно помнить решившим полностью поменять маунт-пойнты внутренней и внешней памяти, т.к. скорее всего все ваше устройство будет работать медленнее, чем раньше.

Надеюсь эта программа дополнит и вашу копилку полезных утилит для андроид устройств.

Если вы все-таки решились поменять местами внутреннюю и внешнюю память, т.е. переназначить внешнюю sd карту на /sdcard и в настройках устройства нет такой опции - имея рут, это можно легко сделать выполнив следущую операцию:
В Root-Explorer монтируем "/etc" как R/W (если R/O), находим файл "/etc/vold.fstab", сохраняем копию и открываем (длинным кликом) его в Text Editor.
В следующих двух строчках меняем название моунт точек местами: dev_mount sdcard /mnt/sdcard emmc@fat /devices/platform/goldfish_mmc.0 ... dev_mount sdcard /mnt/external_sd auto /devices/platform/goldfish_mmc.1 ... на dev_mount sdcard /mnt/external_sd emmc@fat /devices/platform/goldfish_mmc.0 ... dev_mount sdcard /mnt/sdcard auto /devices/platform/goldfish_mmc.1 ...
Подробнее можно почитать . Там же предлагают, как альтернативу, использовать другую интересную программу Root External 2 Internal SD .
Добавлю, что в обоих случаях, перед переключением, вам нужно скопировать все содержимое папки /sdcard на внешнюю sd карту.
Помните, что после переключения вся ваша система может работать , чем раньше.
Будьте осторожны - нужно понимать, что все что вы делаете под рутом, вы делаете на свой страх и риск, и например сохранение неправильного «vold.fstab» может привести к невозможности загрузить устройство и для лечения нужно будет грузится в рекавери и править «vold.fstab» уже там.

Этот способ можно использовать совместно с DirectoryBind, только теперь наоборот «Default target path» (/sdcard) и все связи созданные в DirectoryBind будут указывать на внешнюю карту.

Установка приложений на карту памяти требуется почти каждому владельцу Android устройства, в особенности, если внутреннее хранилище рассчитано на небольшое количество файлов. Независимо от того, с какой целью вы используете свой аппарат – для работы, учебы, развлечений, игр, отведенного объема памяти может быть недостаточно. Если вы заинтересовались тем, как установить приложение на карту памяти в Андроид, то можно воспользоваться двумя способами – системными функциями или специальными утилитами. В чем мы сейчас более подробно разберемся.

Системные возможности Андроид

В платформе Android, начиная с 2.2 версии, предусмотрена системная функция перемещения контента с внешней памяти на карту. Данная возможность действует не всегда, поскольку ее работоспособность зависит также от свойств каждой определенной программы или игры.

Как устанавливать приложения на карту памяти в Андроид :

1 . Предполагается, что на вашем устройстве уже есть загруженные и установленные apk, которые теперь требуется переместить на SD, чтобы освободить память. Откройте настройки девайса и перейдите во вкладку приложения.

2 . В новом окне должно быть несколько пунктов – загруженные, расположенные на SD-card и все программы. Нам нужен первый пункт.

3 . В разделе загруженных располагается весь софт, который вы скачали и инсталлировали самостоятельно. Теперь предстоит работать со всеми отобразившимися программами в списке по отдельности, поскольку перенести все их за один раз не получится.

4 . Чтобы переместить приложения на карту памяти, укажите любое из них в списке и нажмите на него. На дисплее появится вся информация о нем, включая требуемое количество памяти, доступ, который имеется к данным и прочие сведения.

5 . Если для определенной программы предусмотрена функция установки на внешнее хранилище, то кнопка «Перенести на SD » будет активной – нажмите на нее и операция перемещения запустится.

6 . Если кнопка не активна, то системные средства в данном случае бессильны – придется пользоваться сторонними утилитами.

Стоит отметить, что вышеописанная инструкция действует исключительно до платформы версии 4.2 , включая и ее, но как сохранять приложения на карту памяти в Андроид, если устройство работает на более новых версиях платформы? К ним принадлежат следующие ОС: 4.4, 5.0, 5.1, 6.0.

В такой ситуации придется отыскать дополнительную утилиту. Также может потребоваться наличие root прав . Впрочем, в версии 4.4 в некоторых случаях еще можно обойтись без дополнительных программ, но многое зависит от модели мобильного аппарата. К примеру, компания Sony позаботилась о том, чтобы в девайсах присутствовала установка программ на карту памяти в Андроид напрямую без дополнительных приложений и утилит.

При помощи сторонних приложений

Специальных утилит, которые решают проблему установки софта на SD, довольно-таки много, однако лишь некоторые среди них способны эффективно помочь пользователю. Следует отметить наиболее интересные приложения для переноса приложений на SD-карту:

  • App 2 SD
  • Link 2 SD
  • Total Commander

App 2 SD

Это одна из популярных среди владельцев Android утилит, которая значительно упрощает работу с контентом. Последняя версия программы отличается переработанным и улучшенным дизайном.

Основные функции :

  • перемещение программ;
  • управление софтом;
  • скрытие программ.

Непосредственно в утилите весь контент на вашем девайсе разделяется на две категории – тот, что уже размещен на SD, и тот, который можно туда переместить. В Андроид перенос приложений на карту памяти осуществим по отношению к одной выбранной программе или всему имеющемуся софту. Если вы выполните установку программы, которую можно переместить, App 2 SD уведомит пользователя об этом.

Каждый владелец Android устройства крайне недоволен присутствием большого количества ненужных системных приложений в его девайсе. Привычным путем от них никак не избавиться – для удаления необходимо наличие root прав . Однако при этом можно случайно задеть важные файлы, что может привести к неисправности устройства. Выход из этой ситуации есть, благодаря функционалу представленной программы. App 2 SD может скрыть системный контент, за счет чего он не будет нагружать систему.
Что касается управления загруженными приложениями, то благодаря App 2 SD вы можете удалять программы (при этом выполняется полноценное сканирование системы на наличие ненужных данных), очищать данные и кэш.

Скачать программу Apps2SD можно ->
Инструкция по работе с Apps2SD ->

Link 2 SD

Программа разработана в виде функционального менеджера приложений, с помощью него вы можете не только переносить контент в хранилище, но и очищать файлы кэша. В программе имеется обычная функция установки софта, а также перемещение с расширенным функционалом, для которого нужны два раздела на SD и .
Link 2 SD подойдет для опытных пользователей, разбирающихся в особенностях файловых систем, разделах SD. Главные функции:

  • перемещение файлов apk., lib., dex. на SD и обратно;
  • автоматическая установка на SD;
  • перенос даже того контента, в котором эта возможность не предусмотрена;
  • выбор места для установки новых приложений;
  • уведомления о возможности переноса;
  • «заморозка» встроенного контента;
  • очистка кэша, данных;
  • преобразование пользовательских программ во встроенные.

Скачать программу Link 2 SD можно ->

Total Commander

Total Commander – известный менеджер среди владельцев Андроид и ПК. Менеджер предусматривает огромное число функций, которые предназначаются для управления различными данными в системе. Основные функции:

  • перемещение, копирование, переименование, удаление файлов/папок;
  • передача данных по Bluetooth;
  • выделение и сортировка файлов;
  • встроенный архиватор;
  • текстовый редактор;
  • поиск файлов и данных;
  • проигрыватель аудиозаписей и видеофайлов;
  • поддержка функций, которые предусмотрены root правами;
  • изменение свойств файлов и др.

В функционале не предусмотрена специальная возможность для установки приложений во внешнее хранилище, однако именно благодаря поддержке root прав она становится доступной.

Скачать программу Total Commander можно ->

Заключение

Теперь вы знаете, как перенести приложения на карту памяти, что может потребоваться для этого, какие трудности возникают у пользователей чаще всего. Следует заметить, что данная функция считается очень полезной, так как со временем объем доступной памяти в девайсе становится все меньше, а избавляться от важных программ не хочется. К сожалению, автоматическая установка программ на SD невозможна, поэтому после каждой инсталляции придется перемещать контент на внешнее хранилище самостоятельно.