Mount usb sd card android

Mount usb sd card android

Для функционирования программы необходимы права root пользователя.

Краткое описание:
Монтирование SD с доступом и ПК, и телефона.

Описание:
Приложение позволяет монтировать карточку в режим накопителя к ПК не блокируя доступ с коммуникатора. Т.е. можете одновременно лазить по флешке и с компьютера, и с телефона.
Добавляем на экран виджет, после чего идет запрос ROOT прав. Разрешаем, жмем домик. После чего при каждом подключении к компьютеру жмем на виджет.

На Ликвиде у меня заработало после ребута.

Версия 2.14 Full //4pda.to/forum/d…ount_SD_Card_v2.14.apk
Версия 2.41 ® Multi Mount SD-Card (Пост #21580880)
Версия 2.40 //4pda.to/forum/dl/post/2583306/Multi+Mount+SD-Card+v2.40.apk
Версия 2.31 Full //4pda.to/forum/dl/post/2191834/signedMulti_Mount_SD-Card_v2.31.apk
Версия 2.31 Lite //4pda.to/forum/dl/post/2098645/Multi_Mount_SD-Card_Lite__2.31.apk
Если последняя версия работает нестабильно, пробуйте эту: Multi_Mount_SD_Card_v1.66.apk
Версия 2.3 //4pda.to/forum/dl/post/2074619/Multi_Mount_SD-Card_v2.3.apk
Версия 2.22 Multi_Mount_SD-Card_v2.22.apk
Версия 2.21 //4pda.to/forum/dl/post/1907215/Multi%20Mount%20v2.21.apk
Версия 2.15 ® Multi Mount SD-Card (Пост #13056744)
Версия 2.14 Full //4pda.to/forum/dl/post/1596384/Multi_Mount_SD_Card_v2.14_Cracked_borismanasyan.apk
Версия 2.14 //4pda.to/forum/dl/post/1528105/Multi_Mount_SD_Card_v2.14.apk
Версия 1.77 RUS: ® Multi Mount SD-Card (Пост #7123599)
Версия 2.12 Full: //4pda.to/forum/dl/post/1416302/Multi_Mount_SD_Card_2.12.apk
Версия 2.11 Full: //4pda.to/forum/dl/post/1391028/com.rafoid.multimountsdcard.widget_1.apk
Версия 2.10 Full: //4pda.to/forum/dl/post/1343229/Multi_Mount_SD_Card_v.2.10.apk
Версия 2.06: //4pda.to/forum/dl/post/1306473/MultiMountSDCardv2.06_signed.apk
Версия 1.95: //4pda.to/forum/dl/post/1272071/Multi_Mount_SD_Card_1.95.apk
Версия 1.80b Lite: //4pda.to/forum/dl/post/944819/Multi_Mount_SD_Card_Lite_1.80b.apk
Версия 1.90: //4pda.to/forum/dl/post/1144145/mmsd190.zip
Версия 1.79: //4pda.to/forum/dl/post/916614/179mm.apk
Версия 1.77: //4pda.to/forum/dl/post/902833/Multi_Mount_SD_Card_1.77.apk
Версия 1.76: //4pda.to/forum/dl/post/881381/Multi_Mount_SD_Card_1.76_.apk
Версия 1.75: Multi_Mount_SD_Card_v1.75_ru.apk (233.09 КБ)
Изменения:
— добавлено окно при подключении USB (включать в настройках)
Версия 1.66: Multi_Mount_SD_Card_v1.66.apk (196.84 КБ)
Изменения:
— пофикшены баги
Версия 1.62: com.rafoid.multimountsdcard.widget.v1.62.apk ( 135.56 КБ )
версия: 1.60
— Автомонтирование при подключении USB
— Выбор карты для монтирования (только для аппаратов с 2 флешками)
— Скрытие уведомления после некоторого времени
— Сканирование медиа файлов после отмонтирования
FREE:v.1.60 FREE
FULL: v.1.60 FULL. Благодарим доктора nd0ut
версия: 1.52
— должна работать на всех моделях
— фикс определения подключения USB
— фикс клика по виджету
FREE:com.rafoid.multimountsdcard.widget.free_2.apk ( 138.49 КБ )

FULL: v.1.52 FULL. Благодарим доктора nd0ut
версия: 1.41 FREE
— добавлена поддержка Nexus S
com.rafoid.multimountsdcard.widget.free_2.apk ( 138.3 КБ )

Здесь можно взять крякнутую 1.41 версию
Здесь можно взять исправленную версию 1.40 FREE с выключенными GPS и нотификациями.

Сообщение отредактировал $iLence — 20.09.18, 13:27

Источник

Mount usb sd card android

Для функционирования программы необходимы права root пользователя.

Краткое описание:
Монтирование SD с доступом и ПК, и телефона.

Описание:
Приложение позволяет монтировать карточку в режим накопителя к ПК не блокируя доступ с коммуникатора. Т.е. можете одновременно лазить по флешке и с компьютера, и с телефона.
Добавляем на экран виджет, после чего идет запрос ROOT прав. Разрешаем, жмем домик. После чего при каждом подключении к компьютеру жмем на виджет.

На Ликвиде у меня заработало после ребута.

Версия 2.14 Full //4pda.to/forum/d…ount_SD_Card_v2.14.apk
Версия 2.41 ® Multi Mount SD-Card (Пост #21580880)
Версия 2.40 //4pda.to/forum/dl/post/2583306/Multi+Mount+SD-Card+v2.40.apk
Версия 2.31 Full //4pda.to/forum/dl/post/2191834/signedMulti_Mount_SD-Card_v2.31.apk
Версия 2.31 Lite //4pda.to/forum/dl/post/2098645/Multi_Mount_SD-Card_Lite__2.31.apk
Если последняя версия работает нестабильно, пробуйте эту: Multi_Mount_SD_Card_v1.66.apk
Версия 2.3 //4pda.to/forum/dl/post/2074619/Multi_Mount_SD-Card_v2.3.apk
Версия 2.22 Multi_Mount_SD-Card_v2.22.apk
Версия 2.21 //4pda.to/forum/dl/post/1907215/Multi%20Mount%20v2.21.apk
Версия 2.15 ® Multi Mount SD-Card (Пост #13056744)
Версия 2.14 Full //4pda.to/forum/dl/post/1596384/Multi_Mount_SD_Card_v2.14_Cracked_borismanasyan.apk
Версия 2.14 //4pda.to/forum/dl/post/1528105/Multi_Mount_SD_Card_v2.14.apk
Версия 1.77 RUS: ® Multi Mount SD-Card (Пост #7123599)
Версия 2.12 Full: //4pda.to/forum/dl/post/1416302/Multi_Mount_SD_Card_2.12.apk
Версия 2.11 Full: //4pda.to/forum/dl/post/1391028/com.rafoid.multimountsdcard.widget_1.apk
Версия 2.10 Full: //4pda.to/forum/dl/post/1343229/Multi_Mount_SD_Card_v.2.10.apk
Версия 2.06: //4pda.to/forum/dl/post/1306473/MultiMountSDCardv2.06_signed.apk
Версия 1.95: //4pda.to/forum/dl/post/1272071/Multi_Mount_SD_Card_1.95.apk
Версия 1.80b Lite: //4pda.to/forum/dl/post/944819/Multi_Mount_SD_Card_Lite_1.80b.apk
Версия 1.90: //4pda.to/forum/dl/post/1144145/mmsd190.zip
Версия 1.79: //4pda.to/forum/dl/post/916614/179mm.apk
Версия 1.77: //4pda.to/forum/dl/post/902833/Multi_Mount_SD_Card_1.77.apk
Версия 1.76: //4pda.to/forum/dl/post/881381/Multi_Mount_SD_Card_1.76_.apk
Версия 1.75: Multi_Mount_SD_Card_v1.75_ru.apk (233.09 КБ)
Изменения:
— добавлено окно при подключении USB (включать в настройках)
Версия 1.66: Multi_Mount_SD_Card_v1.66.apk (196.84 КБ)
Изменения:
— пофикшены баги
Версия 1.62: com.rafoid.multimountsdcard.widget.v1.62.apk ( 135.56 КБ )
версия: 1.60
— Автомонтирование при подключении USB
— Выбор карты для монтирования (только для аппаратов с 2 флешками)
— Скрытие уведомления после некоторого времени
— Сканирование медиа файлов после отмонтирования
FREE:v.1.60 FREE
FULL: v.1.60 FULL. Благодарим доктора nd0ut
версия: 1.52
— должна работать на всех моделях
— фикс определения подключения USB
— фикс клика по виджету
FREE:com.rafoid.multimountsdcard.widget.free_2.apk ( 138.49 КБ )

FULL: v.1.52 FULL. Благодарим доктора nd0ut
версия: 1.41 FREE
— добавлена поддержка Nexus S
com.rafoid.multimountsdcard.widget.free_2.apk ( 138.3 КБ )

Здесь можно взять крякнутую 1.41 версию
Здесь можно взять исправленную версию 1.40 FREE с выключенными GPS и нотификациями.

Сообщение отредактировал $iLence — 20.09.18, 13:27

Источник

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

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

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

Читайте также:  Samsung android auto яндекс

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

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

  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. Поэтому этот способ можно использовать как дополнительный.

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

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

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

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

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

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

Заключение

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

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

Источник

Смонтировать SD-карту вручную из оболочки adb в android

у меня есть телефон android 4.1 (Lenovo 820). После некоторых изменений, направленных на разделение внутренней SD ram (которая изменилась, телефон больше не будет монтировать внешний SD-карту. Я хорош в Linux, но я никогда не видел оболочку Android до сегодняшнего дня.

Читайте также:  Андроид usb компьютер экран

Я хотел бы знать шаги:

  • получить список доступных устройств, представляющих SD-карты
  • вручную установите SD-карту — команда mount не будет работать так, как она говорит can’t read /etc/fstab — Как вы установите вещи?
  • получите SDcard для установки во время загрузки

My/etc/system / vold.в fstab есть:

гора выглядит так:

1 ответов

Я не могу поверить, что никто не ответил Вам в 2 месяца? Круто. как слабину!

ну в любом случае, я полагаю, что должен ввести вас в некоторую информацию, а также задать некоторые вопросы. 1). У вас есть root-доступ или вы вытащили system vold из образа/прошивки выпуска? Как права суперпользователя Linux? 2). Если у вас есть права root access / super user, как вы его получили? Я имею в виду, какой метод вы использовали, чтобы получить корневой доступ? Это было через некоторые скрипты / двоичные файлы и известный эксплойт? Или это было вспыхнул с помощью корневого ядра? Причина, по которой я спрашиваю, заключается в том, что root-доступ-это не просто root-доступ, как считают большинство людей; существуют различные уровни root-доступа. Например, вы можете иметь полный доступ root в качестве пользователя на устройстве, но придет время, когда вы хотите управлять своей системой удаленно сказать из командной строки вашего любимого дистрибутива Linux, то вы можете обнаружить, что корневой доступ не все это трещины до быть. Если вы использовали эксплойт, а не ядро, то, скорее всего, вы только иметь корневой доступ системного уровня, и ADB (Android debug bridge) на ваш компьютер будет сталкиваться с различными сообщениями, такими как «отказано в доступе», «невозможно получить привилегии суперпользователя» или «adb не может работать как root в производственных сборках» или что-то подобное этому. Причина этого заключается в том, что в отличие от некоторых специализированных ядер разработчиков root через эксплойт не делает ядро небезопасным. Я бы рекомендовал вам немного прочитать о том, что такое небезопасное ядро, и если оно подходит для того, что вы надеясь достичь. Почему я говорю это потому, что на некоторых устройствах, имеющих незащищенное ядра не является идеальным, поскольку он может вызвать некоторые нежелательные системные флаги (некоторые постоянные и необратимые по данным некоторых производителей) и используются против разработчиков не соблюдать гарантии или как средство извлечения денег на премиум ремонт устройств (независимо от того, если вы разработчик надеялся сделать некоторый перерыв через открытий. причинил ущерб устройству или нет? который sux). Я думаю, что устройство должно быть в порядке. Но я не уверен на 100%, поэтому сделайте некоторые исследования.

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

следующее, что вы, вероятно, должны рассмотреть, это то, что вы надеетесь сделать, когда вы получите, где вы хотите в/на устройстве? Ты думал об этом? Если это так, вы можете понять, что стандартный Android консоль / оболочка довольно мрачна и плохо оборудована для инструментов, чтобы делать все великие вещи, которые вы смогли сделать с мгновением Ока на вашем компьютере Linux; это означает, что вам понадобятся некоторые инструменты поддержки, такие как «busybox», а также, возможно, некоторые другие, например, если вы работаете над некоторыми базами данных, которые вы, вероятно, захотите sqlite3, вам, вероятно, понадобится фактический двоичный файл bash для расширения вашей оболочки немного. Вы также хотели бы посмотреть не только на получение этих двоичных файлов, но и на возможно, где они должны быть расположены в вашей системе для удобства доступа в противном случае вы будете получать довольно устали от ввода огромных длинных путей в консоли, чтобы достичь определенных областей вашего устройства, как sdcard. Вы будете знакомы с символическими ссылками, использующими Linux, Ну Android ничем не отличается только тем, что многие системы Android используют контейнер, как среду для приложений. При работе с этим могут быть некоторые препятствия, чтобы преодолеть, как система проверки безопасности на месте попробовать остановить вторжение нежелательных третьих лиц. Это то, что держит большинство разработчиков в безопасности, зная, что их (и ваши) личные данные защищены, однако, когда это вы, и вы хотите войти в эти области устройства, вам нужно правильно настроить свои инструменты. Большинство Android tinkerers используют модифицированный образ восстановления (или пользовательский-не слишком отличается от концепции пользовательского ядра), который позволяет им изменять систему в автономном режиме с помощью в основном простого zip-файла со встроенным обучающий скрипт, двоичный файл и манифест (исследования подписанные и неподписанные молнии для Android пользовательских recoverys — я не буду вдаваться в подробности об этом, но это важно). Вы можете по существу упаковать все свои инструменты в один zip и «flash» установить компоненты в нужные вам области системы и символически связать те же файлы с различными другими местоположениями.

Читайте также:  Виджеты для андроид часы дата

давайте посмотрим на некоторые примеры, скажем, у вас есть root-доступ, потому что вы использовали эксплойт на своем устройство, но защищенное ядро по-прежнему Примечание: защищенное ядро = ro.debugable=0 в вашей системе по умолчанию.Prop файл (создается во время загрузки и не найден или находится в большинстве пакетов прошивки). Если вы хотите разрешить adb иметь корневой доступ, вам нужно будет изменить этот файл и, в частности, строку, о которой я упоминал выше. Могут также быть другие требования, поэтому вы должны посмотреть, что нужно вашему устройству, например, Galaxy Tab, который я ремонтирую на данный момент старше, поэтому использует массовое хранилище вместо протокол передачи мультимедиа, поэтому мне нужно сказать adb, чтобы держать соединение открытым и твердым (Не тайм-аут и разъединение) при работе с устройством; это происходит через значение по умолчанию.файл реквизита также. Трудность возникает, когда вы хотите изменить этот файл; большинство людей декомпилируют ядро и ramdisk и редактируют его напрямую и перекомпилируют, а затем перепрошивают его на устройство в основном потому, что adb, очевидно, не имеет корневого доступа на данный момент. Вы можете вытащить файл из системы, как Итак:

(это если у вас есть adb на вашем пути среды дистрибутива ПК)

это приведет вас прямо, только проблема в том, когда вы хотите вернуть его после изменения, это может быть довольно сложно. Различные решения о, я слышу много толкая его к SDcard / emmc / storage / sdcard0 / default.prop или / tmp / по умолчанию.prop, а затем требуя вас как «суперпользователя» на устройстве, используя что — то вроде эмулятора терминала, диспетчера сценариев или корневого проводника, чтобы поместить файл вернитесь на место и дайте ему правильные разрешения.

ввод ADB remount на устройстве с защищенным ядром позволит вам перемонтировать всю систему как чтение-запись, и вы можете делать все, что захотите. Если небезопасно, хотя вы можете в конечном итоге сделать что-то вроде

или вы можете обнаружить, что вся ваша консоль не имеет прав суперпользователя, что так когда-либо, поэтому вам потребуется adb shell в оболочку устройства (где у него или у вас есть права суперпользователя) , а затем выполнить команды, которые вы хотите попробовать.

недавно я обнаружил, что вы можете получить тот же уровень доступа через одну строку на консоли adb и один ключ возврата, например:

это передает аргументы в одной строке adb shell — > Superuser access — > Pass command- > mount as read-write — > remount command — > в системный раздел.

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

в моем случае я просто повторил те же команды несколько раз и переписал по умолчанию.prop с тем же содержанием, только регулируя конкретные переменные по своему вкусу, как это: обратите внимание, что в первой строке используется только 1>, поэтому это эффективно стирает или перезаписывает значение по умолчанию.файл prop, следовательно, остальные строки также должны следовать. Я использую 2 > like >>, потому что это добавляется к следующей строке файл.

это довольно быстро и эффективно для 4 или 5 строк кода, но это не практично, когда вы переписываете большой файл со многими строками теста. Вы можете посмотреть на такие вещи, как grep с циклическими функциями в скрипте bash для фильтрации определенных строк большого файла text/script/config, однако для этого примера и, вероятно, для вашего системного файла vold этого должно быть достаточно.

Я думаю, этого должно быть достаточно, чтобы (извините за каламбур) вооружить вас достаточно информации, чтобы быть опасным 🙂 На этой ноте, пожалуйста, убедитесь, что у вас есть резервная копия вашего устройства, прежде чем вы идете возиться с системой. Они очень похожи на linux, но они также очень разные! Обратите внимание на это предупреждение, убедитесь, что вы сразу создаете резервную копию раздела EFS!! Efs содержит номер IMEI устройства, и это то, что вы действительно не хотите повредить или потерять. Я видел из первых рук, что может произойти; вам даже не нужно вызывать раздел EFS случайно, чтобы сломать он. вам нужно только сделать ошибку, вызывающую явный путь к неправильному разделу, и он может уничтожить ваш IMEI!

Источник

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