- Системная память android
- Android — типы памяти
- Android — недостаточно памяти
- SD карта как внутренняя память Android
- Использование карты памяти SD в качестве внутренней памяти
- Как форматировать SD карту памяти как внутреннюю память (пример для Android 9.0)
- Видео инструкция
- Особенности работы карты памяти в качестве внутренней памяти Android
- Форматирование карты памяти для использования в качестве внутреннего хранилища в ADB
- Как вернуть обычное функционирование карты памяти
Системная память android
Эта статья посвящена устройству системной памяти android, проблемам, которые могут возникать из-за ее нехватки и способам их решения. Я сам не так давно столкнулся с тем, что мой телефон на базе android стал регулярно выдавать сообщения о нехватке памяти при попытке установить то или иное приложение. Что было для меня очень странно при том, что по описанию на маркете там должно было иметься около 16GB, да еще и я увеличил этот объем при помощи дополнительной карты памяти. Однако проблема имелась, и пришлось основательно повозиться, прежде чем я нашел правильное решение, не требующее получения root-доступа или полного восстановления телефона к заводскому состояние.
Но прежде чем я опишу решение, мне бы хотелось рассказать про типы памяти на android.
Android — типы памяти
Надо понимать, что ваш android телефон — это такой компьютер в миниатюре. Поэтому и память в нем бывает разной:
- Оперативная память (ОЗУ): то временное пространство, которое используют программы, когда они работают. Бывает, что что-нибудь не работает именно из-за нехватки оперативной памяти в данный момент, но такая проблема уж точно решается перезагрузкой вашего телефона. Или есть более простой способ — подержите клавишу home, и из появившегося меню выберите «диспетчер задач». На вкладке «Активные» можно закрыть активные приложения, а на вкладке «ОЗУ» — вообще почистить память от лишнего. Есть также программы, которые специально занимаются тем, что подчищают вашу оперативную память, но я не вижу в них большой необходимости — обычно «оперативки» бывает достаточно;
- Встроенная память: объем, написанный в характеристиках вашего телефона. Например, у меня 16GB. Однако, эта память не едина, а разбита на разделы. В частности, около полутора гигабайт занимает системный раздел, на котором расположена операционная система. У пользователя вообще отсутствует доступ к этой части.
- USB-накопитель: наибольшая часть встроенной памяти, в моем случае — около 11.5GB. Используется для данных большинства программ, видео, фотографий, музыки и многого другого;
- Дополнительная SD-карта: зачастую если вам не хватает памяти на USB-накопителе, вы можете вставить дополнительную SD-карту и использовать ее в аналогичных целях;
- Память приложений: а вот это самый интересный раздел, технически расположенный во встроенной памяти и ограниченный даже в современных телефонах объемом в 2GB. Особенностью этого раздела является то, что приложения устанавливаются исключительно в этот раздел (хоть и имеется возможность перенести потом часть из них на SD-карту). Однако, он используется не только для приложений и именно из-за этого зачастую пользователи и сталкиваются с нехваткой системной памяти на Android.
Примечание: в некоторых моделях телефонов память приложений и USB-накопитель объединены в единое целое, и это несколько облегчает ситуацию.
В настройках в диспетчере приложений у части из них имеется выбор — перенести приложение на карту SD и обратно. К сожалению, даже те приложения, которые позволяют себя переносить, делают это не полностью. Для понимания приведу расшифровку сводки объема приложения:
- Приложение: основные файлы программы, хранящиеся в памяти приложений;
- Приложение в памяти: основные файлы программы, хранящиеся на SD карте;
- Данные: данные программы, хранящиеся в памяти приложений;
- Карта памяти SD: данные программы, хранящиеся на SD-карте;
- Кэш (немного ниже): временные данные программы, хранящиеся на USB-накопителе.
Команда «очистить данные» удаляет пункты 3 и 4, однако это может привести к тому, что вы потеряете все настройки программы. Удаление кэша теоретически не должно ничего портить, но через некоторое время он восстановится обратно. Кнопка переноса на карту данных носит из пункта 1 в 3 и из 2 в 4 или обратно, но переносит лишь часть этих данных. Практически все приложения при нажатии кнопки «перенести в память устройства» полностью освободят карту SD, но некоторые большие данные (например, словари переводчика) могут там остаться.
Очистка кэша удаляет пункт 5.
Кстати, обратите внимание, что приложение может хранить данные не только в указанных здесь «данных». Например, Яндекс.Карты предлагают выбор папки для сохранения данных, и скачанные таким образом оффлайн-карты не учитываются в подсчете того объема, что указан в свойствах приложения.
Android — недостаточно памяти
Если на вашем android-телефоне недостаточно памяти, но могут происходить разные неприятные явления. Вы не сможете фотографировать, не сможете устанавливать или обновлять приложения, часть системных функций может отрубиться. В интернете есть множество советов на тему того, как освободить место, но, в основном, копируются с одного сайта на другой самые базовые советы, а они могут помочь лишь частично. Кроме того, многие способы требуют root-прав на ваш телефон, но мы попробуем обойтись без этого.
Для начала сделайте вот что. Установите из play.market программу disk usage. Откройте ее и изучите разделы. Надо понять, где именно недостаточно памяти. Просто советы, допустим, освобождающие место на «USB-накопитель» не помогут, если у вас не хватает памяти во встроенной памяти (если они не объединены в вашей модели телефона). Итак, в зависимости от того, что заканчивается, могут помочь или не помочь следующие рекомендации:
- Если вам так повезло, и заканчивается место на внешней SD-карте, то это самый простой случай. Вам потребуется карта большего объема, на которую надо будет переписать старые данные.
- Частая проблема с местом во встроенной памяти (не устанавливаются приложения). Частично поможет стандартный совет по переносу некоторых приложений на SD-карту, однако он не спасает ситуацию полностью. Дело в том, что если вы изучите упомянутым выше приложением этот раздел, то увидите часть с названием «system data». И объем этого куска растет со временем и может зашкаливать — в моем случае он превысил гигабайт. В нем, как выясняется, хранятся «дампы» — описания состояния телефона в те моменты, когда он зависает. К счастью, имеется возможность очистить эти дампы. Для этого наберите на телефоне *#9900#, после чего в возникшем меню выберите «Delete dumpstate/logcat».
- Если же у вас забивается внутренний SD-раздел, то опять-таки вам может помочь стандартный совет по удалению кэша приложений (руками или же через специальные утилиты). Однако, следует изучить его при помощи disk usage поподробней. Имеются еще некоторые «мусорные директории», которые можно смело удалять, но при этом они постоянно увеличиваются в размере. Не то, чтобы вам нужно было за ними постоянно следить — думаю, вы просто можете их подчищать, когда заканчивается место. Например, у меня после года работы телефона таким образом забилось несколько гигабайт. Итак, что же это за директории? Во-первых, DCIM/thumbnails. Если в самой папке DCIM еще могут храниться ваши фотографии, то в DCIM/thumbnails располагаются мини-версии этих изображений, и со временем они только накапливаются. Удалять их не страшно, так как необходимые система быстро пересоздаст сама. Да, удалять можно через ту же самую программу disk usage или через любой иной файловый менеджер. А во-вторых, очень разрастаться может папка под названием log (с файлами типа logcat_cp_boot_radio). Ее тоже можно удалить, только не забудьте потом создать пустую папку с таким названием.
Вот такие простые советы могут помочь серьезно подчистить память вашего телефона и решить проблему с тем, что программы не устанавливаются. Если же вы знаете какие-либо еще ненужные объемные папки на памяти вашего телефона, пишите, и я добавлю эту информацию в статью.
Источник
SD карта как внутренняя память Android
Если ваш телефон или планшет на Android 6.0, 7 Nougat, 8.0 Oreo или 9.0 Pie имеет разъем для подключения карты памяти, то вы можете использовать карту памяти MicroSD в качестве внутренней памяти вашего устройства, такая возможность впервые появилась именно в Android 6.0 Marshmallow.
В этой инструкции — о настройке SD карты как внутренней памяти Android и о том, какие ограничения и особенности при этом имеются. Сначала показан процесс для 7.0, затем — для последней версии Android 9. Учитывайте, что некоторые устройства не поддерживают данной функции, несмотря на нужную версию андроид (Samsung Galaxy, LG, хотя и для них есть возможное решение, которое будет приведено в материале). См. также: Как очистить внутреннюю память на Android телефоне или планшете.
Примечание: при использовании карты памяти таким образом, она не может быть использована в других устройствах — т.е. вынуть и подключить ее через кард-ридер к компьютеру получится (точнее, прочесть данные) только после полного форматирования.
Использование карты памяти SD в качестве внутренней памяти
Прежде чем приступать к настройке, перенесите все важные данные с вашей карты памяти куда-либо: в процессе она будет полностью отформатирована.
Дальнейшие действия будут выглядеть следующим образом (вместо первых двух пунктов можно нажать по «Настроить» в уведомлении о том, что обнаружена новая SD-карта, если вы ее только что установили и такое уведомление отображается):
- Зайдите в Настройки — Хранилище и USB-накопители и нажмите по пункту «SD-карта» (На некоторых устройствах пункт настроек накопителей может находится в разделе «Дополнительно», например, на ZTE).
- В меню (кнопка справа вверху) выберите «Настроить». Если в меню присутствует пункт «Внутренняя память», сразу нажмите по нему и пропустите пункт 3.
- Нажмите «Внутренняя память».
- Прочтите предупреждение о том, что все данные с карты будут удалены, прежде чем ее можно будет использовать в качестве внутренней памяти, нажмите «Очистить и отформатировать».
- Дождитесь окончания процесса форматирования.
- Если по завершении процесса вы увидите сообщение «SD-карта работает медленно», это говорит о том, что вы используете карту памяти Class 4, 6 и подобную — т.е. действительно медленную. Ее можно будет использовать в качестве внутренней памяти, но это отразится на скорости работы вашего Android телефона или планшета (такие карты памяти могут работать до 10 раз медленнее чем обычная внутренняя память). Рекомендуется использовать карты памяти UHS Class 3 (U3) или хотя бы U1, об обычных Class 10 ваш телефон может сообщить, что они недостаточно быстрые.
- После форматирования вам будет предложено перенести данные на новое устройство, выберите «Перенести сейчас» (до переноса процесс не считается завершенным).
- Нажмите «Готово».
- Рекомендуется сразу после окончания форматирования карты как внутренней памяти перезагрузить ваш телефон или планшет — нажмите и удерживайте кнопку питания, затем выберите пункт «Перезагрузить», а если такой отсутствует — «Отключить питание» или «Выключить», а после выключения — снова включите устройство.
На этом процесс завершен: если зайти в параметры «Хранилище и USB накопители», то вы увидите, что место, занятое во внутренней памяти уменьшилось, на карте памяти — увеличилось, а общий объем памяти также увеличился.
Однако, в работе функции использования SD-карты как внутренней памяти в Android 6 и 7 есть некоторые особенности, которые могут сделать использование такой возможности нецелесообразным — об этом соответствующий раздел руководства.
Как форматировать SD карту памяти как внутреннюю память (пример для Android 9.0)
На последней версии Android все действия по превращению карты памяти MicroSD во внутреннюю практически те же самые, но на всякий случай отдельно опишу шаги и приведу снимки экрана (не забудьте, что все данные с карты памяти в процессе будут удалены, позаботьтесь о сохранении важных файлов):
- На вашем смартфоне зайдите в Настройки — Хранилище. А затем нажмите по пункту «SD-карта».
- Нажмите по кнопке меню справа вверху, выберите пункт «Настройки хранилища», а на следующем экране — «Внутренняя память».
- Внимательно прочитайте, что именно произойдет и, если согласны, подтвердите форматирование карты памяти как внутренней памяти. Дождитесь завершения процесса.
- Для переноса данных (тех, которые можно перенести) из внутренней памяти на SD карту памяти, откройте меню в параметрах хранилища и выберите пункт «Перенести данные».
На этом процедура будет завершена. Все особенности работы и способ возврата карты памяти в режим работы в качестве портативного накопителя остаются теми же самыми, что и для предыдущих версий Android.
Видео инструкция
Далее — простое видео, где весь процесс форматирования MicroSD в качестве внутреннего хранилища, а также перенос данных на карту памяти показаны наглядно.
Особенности работы карты памяти в качестве внутренней памяти Android
Можно предположить, что когда к внутренней памяти Android объемом N присоединяется объем карты памяти M, общий доступный объем внутренней памяти должен стать равным N+M. Более того, примерно это отображается и в информации о хранилище устройства, однако по факту все работает несколько иначе:
- Всё, что возможно (за исключением некоторых приложений, системных обновлений) будет помещаться на внутреннюю память, находящуюся на SD-карте, без предоставления выбора. Но внутренняя память продолжить заниматься: не все данные и не все приложения можно разместить на SD карту.
- При подключении Android устройства к компьютеру в данном случае вы будете «видеть» и иметь доступ только к внутренней памяти на карте. То же самое и в файловых менеджерах на самом устройстве (см. Лучшие файловые менеджеры для Android).
Как итог — после того, момента, когда SD карта памяти стала использоваться как внутренняя память, у пользователя нет доступа к «настоящей» внутренней памяти, а если предположить, что собственная внутренняя память устройства была больше чем память MicroSD, то объем доступной внутренней памяти после описываемых действий не увеличится, а уменьшится.
Ещё одна важная особенность — при сбросе телефона, даже в том случае, если вы извлекли карту памяти из него перед сбросом, а также в некоторых других сценариях восстановить данные с неё невозможно, подробнее об этом: Можно ли восстановить данные с SD карты памяти, отформатированной как внутренняя память на Android.
Форматирование карты памяти для использования в качестве внутреннего хранилища в ADB
Для Android устройств, где функция недоступна, например, на Samsung Galaxy S7-S9, Galaxy Note, существует возможность отформатировать SD карту в качестве внутренней памяти с помощью ADB Shell.
Поскольку этот способ потенциально может привести к проблемам с телефоном (и не на любом устройстве может сработать), подробности по установке ADB, включению отладки по USB и запуску командной строки в папке с adb я пропущу (Если вы не знаете, как это делается, то, возможно, лучше не стоит браться. А если возьметесь — то на свой страх и риск).
Сами же необходимые команды будут выглядеть следующим образом (карта памяти должна быть подключена):
- adb shell
- sm list-disks (в результате выполнения этой команды обратите внимание на выданный идентификатор диска вида disk:NNN,NN — он потребуется в следующей команде)
- sm partition disk:NNN,NN private
По завершении форматирования, выйдите из adb shell, а на телефоне, в параметрах хранилища откройте пункт «SD карта», нажмите по кнопке меню справа вверху и нажмите «Перенести данные» (это обязательно, иначе продолжит использоваться внутренняя память телефона). По окончании переноса процесс можно считать завершенным.
Ещё одна возможность для таких устройств, при налчии root-доступа — использование приложения Root Essentials и включение Adoptable Storage в этом приложении (потенциально опасная операция, на свой страх и риск, не выполняйте на старых версиях Android).
Как вернуть обычное функционирование карты памяти
Если вы решите отключить карту памяти от внутренней памяти, сделать это просто — перенесите с нее все важные данные на компьютер, после чего зайдите, также как и в первом способе в настройки SD-карты.
Затем, в меню действий с картой памяти выберите пункт «Портативный носитель» и, следуя указаниям, выполните форматирование карты памяти.
Источник