Как найти сд карту на андроиде

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

Как найти сд карту на андроиде

Одна из частых неполадок, с которой встречаются пользователи устройств с ОС Android после покупки карточки памяти типа Micro — гаджет не видит внешний накопитель. Как правило, система оповещает владельца смартфона о проблеме при помощи уведомления — «SD-карта не работает», «устройство SD-карта повреждено», не поддерживается системой и так далее.

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

Имейте в виду, что следующие инструкции подходят для чистой версии Android. Названия настроек в смартфонах с модифицированными оболочками (Xiaomi, Samsung и пр.) отличаются. Однако суть не меняется.

SD-карта не работает» или «Устройство SD-карта повреждено»

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

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

Самые распространенные случаи:

  • «SD карта не поддерживается», либо «Проблема с накопителем», встречается ошибка преимущественно на новых версиях ОС;
  • на смартфонах от концерна Samsung ошибки выглядят следующим образом: «Проблема с накопителем (Карта памяти)», «Неподдерживаемая карта памяти»;
  • на более старых версиях операционной системы Андроид — «SD-карта не работает».

Существуют другие варианты. К примеру, один внешний накопитель отображается, как два, но они не работают. Или устройство не «видит» хранилище вообще.

Эти признаки не означают, что внешнее хранилище на самом деле повреждено или не поддерживается смартфоном, либо планшетом. Стоит попробовать открыть СД на компьютере через кард-ридер или адаптер.

Если Android устройство отображает такие уведомления, то самая вероятная причина — планшет или телефон не поддерживает файловую систему, либо ее вообще нет.

Последнее случается после неправильного использования SD на компьютере.

Что делать в такой ситуации? Предлагаем следующие решения проблемы.

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

После того, как хранилище откроется на ОС Windows или Mac, перетащите нужные файлы на рабочий стол или диск и отформатируйте хранилище в файловой системе FAT32 или ExFAT.

Существует еще один вариант — сохраните файлы на персональном компьютере или ноутбуке, вставьте КП в Андроид устройство и отформатируйте при помощи телефона или планшета. Для этого нажмите на уведомление или сделайте следующее:

  1. Зайдите в настройки.
  2. Найдите вкладку «Хранилище».
  3. Затем «SD карта».

В телефонах Samsung директория такая: Меню настроек — Обслуживание устройства — Память — Карта памяти SD.

Если на хранилище нет важной информации — используйте функции операционной системы Андроид. Форматировать можно следующим образом: нажмите на уведомление, в котором написано, что КП работает некорректно или откройте настройки, перейдите во вкладку «Хранилище и USB накопители», далее в «Съемный накопитель». Нажмите на кнопку «SD карта» и отформатируйте ее, выбрав подходящий вариант.

Если после форматирования на компьютере проблема не решилась, либо Андроид не может отформатировать КП, то проблема связана не с файловой системой.

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

Другие причины

Существуют более редкие случаи, когда Android устройство не «видит» внешнее хранилище.

SD не поддерживается телефоном или планшетом

Не все планшеты и телефоны поддерживают большие объемы памяти на внешних хранилищах. К примеру, с некоторыми моделями смартфонов Samsung работают накопители с емкостью до 64 гигабайт.

Более давние китайские устройства поддерживают иногда 32 или 16 ГБ.

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

Современные смартфоны работают, как правило, с хранилищами до 256 гигабайт. Однако некоторые китайские модели ограничены меньшим количеством памяти.

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

Загрязненный слот или контакты карты памяти

Если телефон или накопитель не новые, то причина часто кроется в загрязнениях. В таких местах, как разъемы и слоты скапливается пыль, грязь. Кроме того, контакты окисляются из-за влаги.

В таком случае устройство не сможет соединиться с SD. Чтобы решить проблему, часто достаточно просто протереть контакты карты при помощи ластика. Если в телефоне слот открытый, то стоит его также очистить.

Не стоит совать посторонние предметы в труднодоступные места.

Редко случаются повреждения контактов или Micro SD. В первом случае попробуйте вставить накопитель в другой телефон или компьютер, который точно работает. Если он работает, то неполадка с телефоном. Во втором случае поменяйте накопитель. Если не работает только один, то очистите контакты.

Дополнительные советы

Если ни один из советов не решил проблему, и система не видит хранилище вообще или появляется уведомление о неполадке, то попробуйте следующие советы:

  1. Если после подключения к компьютеру через адаптер или кард-ридер в проводнике появляется новый пункт, то отформатируйте. Выберите файловую систему FAT32 или ExFat. После этого повторно подключите накопитель к телефону или планшету.
  2. Если не удается изменить файловую систему или отформатировать, то воспользуйтесь специальной программой — «SD Card Formatter». Скачайте ее на ПК или ноутбук с официального сайта.
  3. Если ни один из способов не работает, то, скорее всего, карточка повреждена и уже не будет работать. Однако стоит проверить, исправный ли слот в мобильном телефоне или планшете.
  4. Устройства, купленные в неизвестных магазинах за небольшую цену, бывают поддельными. Лучше немного доплатить и купить качественный аппарат у проверенного продавца.
  5. Если при подключении СД к компьютеру с ОС Windows она не отображается, то нажмите комбинацию клавиш Win + R и введите в поле «diskmgmt.msc» (без кавычек). Выберите в списке один из разделов накопителя, нажмите на него правой кнопкой мыши, затем «Удалить том».

Таким образом решается проблема с подключением карты памяти к Андроид устройству.

Дата: 15.01.2020 Автор/Переводчик: DM

Источник: https://linchakin.com/posts/android-device-does-not-see-the-memory-card/

6 причин, почему телефон не видит карту памяти и как исправить

Как найти сд карту на андроиде

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

Что стоит сделать в первую очередь, если телефон перестал видеть MicroSD?

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

  1. Перезапустите устройство. Для этого удерживайте кнопку питания несколько секунд, а затем выберите пункт «Перезапуск» в появившемся меню.
  2. Много устройств, поддерживающих карту памяти, имеют съемный аккумулятор. Если у вас такая модель, что на несколько секунд удалите батарею, а затем установите ее на место.
  3. После очередной проверки работоспособности карты, не увенчавшейся успехом, проведите другой тест – вытащите microSD и очистите ее контакты мягкой салфеткой. Проверьте также качество контактов в слоте (они не должны быть деформированы или окислены).

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

Исправляем неподходящий формат накопителя (карты памяти)

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

  • операционная система Android не воспринимает разметку или файловую систему, с которой работает накопитель;
  • сбой разметки памяти;
  • пользователем была проведено форматирование с неправильными настройками.

Обычно причина банальна – современные флешки производители готовят под работу с файловой системой exFAT, воспринимаемой не всеми устройствами. Устраняется такая проблема при помощи форматирования носителя. Его можно произвести несколькими способами:

  1. Провести форматирование в FAT32 можно при помощи режима Recovery. Этот способ трудоемкий и не слишком удобный, так как придется заходить в системное меню и искать нужный пункт. Мы не будем приводить его, так как есть методы решения проблемы получше.
  2. Утилита SD Formatter для ПК. В этом случае вам потребуется поставить на свой компьютер бесплатную программу и вставить в него флешку при помощи картридера. Если у вас ноутбук, то скорее всего у вас есть отсек для SD. Вместе с картами microSD продаются переходники, которые как раз предназначены для этого слота. Управлять программой просто – необходимо из списка жестких дисков выбрать вашу карту, а затем остановиться на пункте «Форматирование» в меню. Перед запуском процесса вам необходимо выбрать файловую систему, которую вы хотите в дальнейшем использовать на носителе.
  3. Использование стандартного средства Windows. Отличие этого варианта от использования специальной утилиты лишь в том, что возможность форматирования вызывается щелчком правой кнопки мыши по названию носителя. Подключить флешку можно при помощи переходника. Есть еще один вариант – использовать стандартный кабель и подключить с его помощью телефон с установленным в слот носитель. Второй способ обнаружения носителя компьютером стоит использовать лишь в крайних случаях.
  4. Операционная система Android имеет еще один встроенный способ, который поможет вам решить проблему форматирования. В меню управления памятью есть функция «Форматирование SD», можно воспользоваться ею. Эту возможность стоит использовать лишь в тех случаях, когда смартфон обнаруживает карту, но не может ее использовать из-за возникновения ошибки.

В большинстве случаев простым форматированнием вы сможете решить проблему. Если этот вариант вам не подошел, продолжайте поиски причины, почему телефон не видит флешку.

MicroSD вышла из строя

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

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

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

Несовместимость карты памяти

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

Например, модель J120 поддерживает только носители с объемом памяти до 64 ГБ, тогда как пользователи, желая по максимуму «прокачать» устройство устанавливают в него карты с 128 ГБ. Такую флешку смартфон воспринимать не будет, даже после форматирования ее в правильном формате.

Отсутствие контакта в слоте смартфона

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

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

Программный сбой

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

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

Источник: https://SmartBobr.ru/poleznosti/telefon-ne-vidit-kartu-pamyati/

Получение пути к карте памяти SD Card на 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 системы).

public enum MountDeviceType { EXTERNAL_SD_CARD, REMOVABLE_SD_CARD}
И был создан класс StorageHelper, который и осуществляет поиск доступных карт памяти.

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

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

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

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

getExternalStorageDirectory() .getAbsolutePath();if (!path.trim().isEmpty() && android.os.Environment.getExternalStorageState().equals( android.os.Environment.MEDIA_MOUNTED)) { testAndAdd(path, MountDeviceType.EXTERNAL_SD_CARD);} // Получаем ремуваблString rawSecondaryStoragesStr = System.

getenv(“SECONDARY_STORAGE”);if (rawSecondaryStoragesStr != null && !rawSecondaryStoragesStr.isEmpty()) { // All Secondary SD-CARDs splited into array final String[] rawSecondaryStorages = rawSecondaryStoragesStr .split(File.

pathSeparator); for (String rawSecondaryStorage : rawSecondaryStorages) { testAndAdd(rawSecondaryStorage, MountDeviceType.REMOVABLE_SD_CARD); }}

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

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

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

* к этому файлу простым смертным доступа нет, поэтому рассматривать этот способ не буду.

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

Внешняя память будет характеризоваться параметром “fuse“.

Примечание: при использовании такого способа не всегда корректно (скорее всего я что-то не учел) определяются типы смотнтированных устройств. Разницу замечал на разных версиях Android. Поэтому этот способ можно использовать как дополнительный. Функция fillDevicesProcesstry { Runtime runtime = Runtime.getRuntime(); proc = runtime.exec(“mount”); try { is = proc.getInputStream(); isr = new InputStreamReader(is); br = new BufferedReader(isr); while ((line = br.readLine()) != null) { if (line.contains(“secure”)) continue; if (line.contains(“asec”)) continue; if (line.contains(“fat”)) {// TF card String columns[] = line.split(” “); if (columns != null && columns.length > 1) { testAndAdd(columns[1], MountDeviceType.REMOVABLE_SD_CARD); } } else if (line.contains(“fuse”)) {// internal(External) // storage String columns[] = line.split(” “); if (columns != null && columns.length > 1) { // mount = mount.concat(columns[1] + “”); testAndAdd(columns[1], MountDeviceType.EXTERNAL_SD_CARD); } } } } finally { … }} catch (Exception e) { …}

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

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

Многие замечали в директории монтирования устройств такую картину: /storage/sdcard0//storage/emulated/0//storage/emulated/legacy/
И что самое интересно, все это одна и та же внешняя карта памяти.

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

Если бы был доступ к конфигурации монтирования, то и вопросов не было. Но доступа нет.

Поэтому я тут подсмотрел решение с расчетом хэша для каждого устройства:

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

Своя функция расчета хэша calcHashprivate int calcHash(File dir) { StringBuilder tmpHash = new StringBuilder(); tmpHash.append(dir.getTotalSpace()); tmpHash.append(dir.getUsableSpace()); File[] list = dir.listFiles(); for (File file : list) { tmpHash.append(file.getName()); if (file.isFile()) { tmpHash.append(file.length()); } } return tmpHash.toString().hashCode(); }

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

/* Получаем базовый путь */if (!mPreferences.contains(PREFS_BASEBATH)) { // Если еще не сохранялся в настройках, то пытаемся найти карты // памяти ArrayList storages = StorageHelper.getInstance() .getRemovableMountedDevices(); // проверяем съемные карты памяти if (storages.size() != 0) { setBasePath(storages.get(0).

getPath() + mAppPath); } else if ((storages = StorageHelper.getInstance() // Проверяем // внутреннюю // память .getExternalMountedDevices()).size() != 0) { setBasePath(storages.get(0).getPath() + mAppPath); }} else { // Вытаскиваем из сохранненых настроек mBasePath = mPreferences.getString(PREFS_BASEBATH, context .getFilesDir().

getParent());}

Заключение

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

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

Кто еще какими способами пользуется?

UPD1: Исходный код класса на bitbucket

  • android
  • разработка под android
  • sd card

Хабы:

Источник: https://habr.com/ru/post/254813/

Поделиться:
Нет комментариев

    Добавить комментарий

    Ваш e-mail не будет опубликован. Все поля обязательны для заполнения.