Как прописать путь андроид

Сохранение файлов вместо внутренней памяти на SD-карту

Илья – главный редактор сайта softdroid.net. Является автором нескольких сотен руководств и статей по настройке Android. Около 15 лет занимается ремонтом техники и решением технических проблем iOS и Android. Имел дело практически со всеми более-менее популярными марками мобильных смартфонов и планшетов Samsung, HTC, Xiaomi и др. Для тестирования используется iPhone 12 и Samsung Galaxy S21 с последней версией прошивки.

Операционная система занимает значительную часть внутренней памяти смартфона. Проходит не так много времени с момента покупки телефона, память заполняется, и вопрос удаления посторонних файлов начинает беспокоить. Даже после установки sd карты в телефон проблема не всегда решается – пользователи не знают, как изменить место сохранения файлов. Эту проблему мы сейчас и устраним.

Содержание:

Как включить sd карту на Андроиде

Несмотря на очевидность, не все пользователи умеют подключать карту памяти к телефону. Рассмотрим, как это сделать.

  1. Если флеш-карта еще не установлена в слот телефона, сделайте это.
  2. После этого, на экране устройства появится сообщение “SD карта готова. Изменить память для записи по умолчанию?».
  3. Нажмите «Да», изменения вступят в силу.
  4. Если никакого сообщения нет, внесите изменения в разделе «Память»
  5. Как вариант – смахните шторку в верхней части экрана вниз и тапните на появившееся сообщение.

После выполнения этой инструкции вы можете скачать на карту памяти любые файлы.

Видео инструкция! (если нет времени читать)

Автоматическое сохранение файлов на карту памяти

Чтобы скачиваемые из интернета файлы помещались сразу на карту памяти, нужно зайти в настройки телефона и изменить место их сохранения. Инструкция должна сработать независимо от установленной версии ОС Андроид.

  1. Зайдите в «Настройки» и выберите раздел «Память»;
  2. В верхней части окна обратите внимание на пункт «Сохранить данные по умолчанию»;
  3. Поставьте галочку напротив надписи «SD-карта».
  4. Место загрузки будет изменено.

Путь к настройкам сохранения может отличаться. В других версиях операционной системы будет подпункт «Настройки памяти» (или подобный), а в нем – «Место сохранения по умолчанию». Тапните на него и выберите «SD-карта».

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

Меняем папку сохранения в браузере

Для выхода в интернет используется браузер, и большинство файлов загружается на телефон через него. Чтобы данные скачивались на карту памяти можно настроить его так, чтобы перед закачкой он запрашивал место сохранения. Рассмотрим изменение пути сохранения на примере Google Chrome.

  1. Запустите браузер Chrome;
  2. В меню (3 вертикальные точки) перейдите в «Настройки»;
  3. Прокрутите страницу вниз, выберите «Скачанные файлы».
  4. Напротив строки «Спрашивать, куда сохранять файлы» переместите ползунок вправо.
  5. Попасть в этот раздел можно по-другому — в меню выбрать пункт «Скачанные файлы», а уже оттуда перейти в «Настройки» и переместить ползунок.

Если у вас телефон Samsung (с Android 9 и выше)

Владельцам смартфонов Самсунг изменить место сохранения файлов проще простого. Настройки изменяются через стандартный браузер, установленный на телефоне по умолчанию (обычно это Chrome). Действия:

  1. Зайдите в меню телефона и найдите классический браузер (название «Интернет»);
  2. Щелкните на 3 вертикальные кнопки в правом верхнем углу и перейдите в меню;
  3. Щелкните «Настройки» >Веб-сайты и загрузки;
  4. Выберите “Место сохранения файлов”;
  5. Выберите «Карта памяти».
  6. С этого момента все загрузки будут автоматически помещаться на sd карту.
Читайте также:  Система голосового управления android

Если у вас Samsung Galaxy, но способ не сработал, это может быть связано с тем, что:

  • вы используете не штатный браузер,
  • в телефоне нет sd карты,
  • у вас не оригинальный телефон Samsung, а фейк.

Перенос файлов на sd карту

Чтобы освободить пространство, перенесите данные с внутренней памяти на флешку. Для этого

  1. зайдите в папку «Файлы»
  2. выберите интересующую подпапку (фото, видео, документы и т. д.).
  3. Нажмите на файл и удерживайте палец в течение секунды, пока он не выделится.
  4. Отметьте поочередно все фото/видео/аудио, которые хотите перенести в другое место или нажмите «Выбрать все», если есть такой пункт.
  5. Нажмите кнопку «Переместить».
  6. В новом окне выберите «Карта памяти», а после — конкретную папку.
  7. Подождите, пока закончится перенос данных.
  8. Аналогично повторите процедуру с остальной информацией.

Объединение карты памяти со внутренней

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

Способ 1

  1. Зайдите в «Настройки» и выберите раздел «Память»;
  2. В разделе «Настройки памяти» поставьте галочку напротив надписи «SD-карта».
  3. Появится сообщение следующего содержания: «Телефон зашифрован. Перед изменением места сохранения убедитесь, что новое место безопасно».
  4. Проверьте карту на вирусы, если не уверены, затем нажмите «ОК».
  5. Если карта не особо вместительная, появится дополнительное сообщение: «У установленной карты малый объем памяти. Переключение не рекомендуется. Переключить?». Сделайте это или замените карту на более вместительную.
  6. После это появится еще одно сообщение «…При переключении может произойти потеря данных, телефон перезагрузится, для вступления изменений в силу…». Нажмите «Продолжить»
  7. Дождитесь, пока телефон перезапустится.

После включения смартфона, объем внутренней памяти будет увеличен на «размер» SD-карты, а файлы начнут сохраняться на нее. Аналогичным образом – с перезагрузкой телефона, все возвращается обратно.

Способ 2

  1. Перейдите в «Настройки» > «Накопители» (если он имеется);
  2. Щелкните по кнопке «Micro SD». Зайдите в меню (3 вертикальные точки);
  3. Повторно нажмите на «Накопители»;
  4. Отметьте «Подключить к внутренней памяти».
  5. На следующей странице очистите и отформатируйте карту памяти.
  6. Дождитесь окончания процесса
  7. Перенесите нужные данные на Micro SD, если в этом есть необходимость. Все скачиваемые после этого файлы будут размещаться на ней.

Меняем местами внутреннюю память с sd картой

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

  1. Установите программу Total Commander и предоставьте ей права суперпользователя после запуска;
  2. Перейдите в Корень файловой системы;
  3. Откройте папку «ETC» и найдите там раздел «vold.fstab». Тапните по нему и нажмите «Редактировать».
  4. Найдите строчки «dev_mount»… и символы sdcard и extsd в конце поменяйте снизу-вверх и наоборот.
  5. Сохраните изменения, перезагрузите смартфон.

Источник

Получение пути к карте памяти SD Card на Android

Разрабатывая приложение для проведения соревнований, я столкнулся с проблемой хранения базы данных. Проблема состояла в том, как мне определить внешнюю карту памяти. В целом поиск в сети точного ответа не дал. Поэтому, объединив все найденные результаты, я собрал свой класс. Если кому интересно, смотрим под катом.

Читайте также:  Cms h264 dvr android

Итак, начнем с теории.

Терминология

Гугл нам говорит, что есть следующие понятия:

  1. Внутренняя (internal) память — это часть встроенной в телефон карты памяти. При ее использовании по умолчанию папка приложения защищена от доступа других приложений (Using the Internal Storage).
  2. Внешняя (external) память — это общее «внешнее хранилище», т.е. это может быть как часть встроенной памяти, так и удаляемое устройство. Обычно это часть встроенной памяти, как удаляемое устройство я видел в последний раз на андройде 2.2, где встроенная память была около 2Гб, и подключаемая память становилась внешней (Using the External Storage).
  3. Удаляемая (removable) память — все хранилища, которые могут быть удалены из устройства без «хирургических» вмешательств.

До версии KitKat 4.4 API не предоставляло функционала для получения путей к внешней памяти. Начиная с этой версии (API 19) появилась функция public abstract File[] getExternalFilesDirs (String type), которая возвращает массив строк с путями к внутренней и внешней памяти. Но как же быть с нашей SD Card, которая вставлена в слот? Путь к ней мы опять не можем получить.

Результаты поиска

Чтобы ответить на поставленный вопрос я обратился к всезнающему гуглу. Но и он мне не дал четкого ответа. Было рассмотрено множество вариантов определения от использования стандартных функций, которые ведут к внешней памяти, но ничего общего с удаляемыми устройствами хранения данных они не имеют, до обработки правил монтирования устройств (Android же на ядре Linux работает). В последних случаях были использованы «зашитые» пути к папке с примонтироваными устройствами (в различных версиях эта директория разная). Не стоит забывать, что от версии к версии правила монтирования меняются.

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

Описание кода

Был создан класс MountDevice, который содержит в себе путь к устройству, тип устройства и некий хэш.
Типов устройств выделено два (внутреннюю память я не стал трогать, так как к ней доступ можно получить через API системы).

И был создан класс StorageHelper, который и осуществляет поиск доступных карт памяти.

В классе StorageHelper реализовано два способа поиска — через системное окружение (Environment) и с использованием утилиты Linux mount, а точнее результата ее выполнения.

Способ первый — Environment

При работе с окружением я использую стандартную функцию getExternalStorageDirectory() для получения информации о внешней памяти. Чтобы получить информацию о удаляемой памяти, я использую переменную окружения «SECONDARY_STORAGE«.

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

Вариант решения взят со stackoverflow. Ответ где-то там внизу.

Способ второй — mount

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

Вернемся к утилите mount. При запуске без параметров команда возвращает список смонтированных файловых систем. Удаляемые устройства имеют обычно формат файловой системы FAT, то будем выделять строки, в которых есть характеристика «fat«. Внешняя память будет характеризоваться параметром «fuse«.

Читайте также:  Галерея android нет картинок

Примечание: при использовании такого способа не всегда корректно (скорее всего я что-то не учел) определяются типы смотнтированных устройств. Разницу замечал на разных версиях Android. Поэтому этот способ можно использовать как дополнительный.

Вариант решения взят со stackoverflow. Ответов там несколько примерно одинаковых.

Про дублирование

Многие замечали в директории монтирования устройств такую картину:

И что самое интересно, все это одна и та же внешняя карта памяти. Такое дробление начинается с версии Jelly Bean и сделано это для поддержки многопользовательского режима работы системы. Более подробно тут. И вот, чтобы не получать одну и туже карту памяти как различные устройства, необходим способ определения идентичности. Если бы был доступ к конфигурации монтирования, то и вопросов не было. Но доступа нет. Поэтому я тут подсмотрел решение с расчетом хэша для каждого устройства:

  1. создаем StringBuilder
  2. записываем в него общий размер устройства и размер используемого пространства устройства
  3. обходим содержимое корня устройства
  4. записываем имя каталога
  5. записываем имя файла и размер
  6. вычисляем hash

Пример использования

Заключение

Подробные рассуждения по этому вопросу понимания памяти в Android, некоторые советы можно прочитать тут.

Исходный код всего класса расположен еще нигде не расположен. На днях постараюсь разместить на gitHub.

Источник

Как изменить место сохранения файлов на Android

Операционная система Android славится своей простотой и удобством. И это на самом деле так. Ведь в сравнении, например, с полностью закрытой системой iOS на Android все понятно. Интерфейс освоит любой, даже ребенок. К тому же есть возможность изменить абсолютно все: цветовую тему, фон, иконки, анимации, экран блокировки и т.д. Казалось бы, проблем возникнуть не должно, однако и здесь не обходится без сложностей.

Так, очень многие владельцы устройств на Android озадачены проблемой – как изменить место сохранения файлов?
Чтобы изменить место сохранения файлов на Android, сначала нужно разобраться, о каких именно файлах идет речь. Музыка, фото, видео, загрузки или что-то еще.
Фотографии, сделанные в приложении «Камера» стандартно сохраняются в папке «DCIM», которую можно найти в файловом менеджере либо в папке «Галерея».
В настройках любого редактора установлен путь «По умолчанию». Но при желании его можно изменить внутри самого редактора.
Плееры также имеют в настройках необходимый пункт.
Файлы, переданные по каналу Bluetooth, по умолчанию сохраняются в папку «Bluetooth», находящуюся в папке «Downloads».
Музыка, картинки, игры, файлы, закачанные из интернета через браузер, автоматически сохраняются в папке «Downloads». Однако в настройках браузера можно изменить по своему желанию место сохранения файлов на Android.
В общем, понять, куда сохраняются файлы на Android, большой сложности не вызывает. Здесь все аналогично Windows. Одни приложения позволяют пользователю выбирать путь сохранения файлов, другие – нет. Многие приложения для этого используют стандартные папки (Audio, Video, Download).

Если проблема изменения места сохранения файлов на Android все-таки встала достаточно остро, то рекомендуется установить ES Проводник.
ES Проводник – это один из популярнейших файловых менеджеров для Android. C его помощью можно легко просматривать папки, проводить различные операции с файлами, просматривать фото и видео, слушать музыку и т.д. Функционал этого небольшого приложения огромен.
Плюсом данной программы можно назвать легкий доступ к многим приложениям (CoolReader, Одноклассники, VK, Переводчик и т.д.).
Еще одним достоинством ES Проводник является быстрая передача файлов с компьютера на смартфон и наоборот.
Ну и главное – программа позволяет изменить место сохранения файлов на Android для большинства программ.

Источник

Оцените статью