Что такое usb накопитель на андроиде

Что такое USB OTG и зачем это нужно?

Что такое usb накопитель на андроиде

Можно ли быстро перекинуть файлы с флэшки на телефон, выложить снимки с фотоаппарата в инстаграм за 10 минут, заставить гореть гирлянду только от смартфона? Благодаря технологии USB OTG ваш смартфон может больше, чем вы думаете.

Со времен первых коммуникаторов смартфоны все больше стремятся к копированию функционала ноутбуков и настольных ПК.

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

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

Технология USB OTG появилась в 2006 году. Изначально она разрабатывалась для того, чтобы не только компьютеры, но и другие устройства могли обмениваться между собой информацией, используя порт USB.

Об этом говорит и сама аббревиатура OTG — «On-the-Go», что дословно на русский язык переводится как «На ходу». Подразумевается, что можно использовать устройства, которые буквально помещаются в кармане.

Не удивительно, что в последнее время USB OTG ассоциируется именно со смартфонами и планшетами, так как это самые популярные товары, поддерживающие данную технологию. Хотя на самом деле те же USB-флешки, подключенные автомагнитолам или другим устройствам — та же самая технология USB OTG.

В качестве примера будет рассмотрен стандартный переходник USB OTG с уже постепенно устаревающим разъемом Micro-USB. На схеме выше у Micro-USB отображены пять контактов, и именно при взаимодействии 4-го и 5-го контактов мобильное устройство получает возможность распознать то, что к нему подключено. Тогда как на первый контакт подается питания, без которого работа USB OTG также невозможна.

Почти все современные смартфоны и планшеты поддерживают USB OTG. Исключения бывают в основном среди бюджетных моделей с разъемом Micro-USB, хотя иногда встречаются и экземпляры с современным Type-C портом, к которому нельзя подключить ничего кроме кабеля (к примеру, смартфон Noa N1).

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

Хотя с тепловизором оказалось все не так просто даже при поддержке технологии OTG. В случае с моделью, у которой есть разъем Micro-USB, может получиться так, что камера гаджета будет повернута в сторону пользователя. В этом плане гораздо удобнее тепловизоры с новым разъемом Type-C, которые можно развернуть как угодно.

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

Однако у популярной Android OS есть множество измененных версий прошивок, и в китайских смартфонах, на которых установлены фирменные оболочки ColorOS, HiOS и Funtouch OS, перед каждым подключением нужно активировать функцию USB OTG, которая через какое-то время автоматически отключается.

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

Самый верный способ проверки — попробуйте подключить к устройству какой-нибудь гаджет — USB-флешку или что-то другое.

Также есть различные приложения, которые пытаются определить, поддерживается ли устройством «On-the-Go», но информация, отображаемая в таком софте, не всегда является достоверной.

Еще для проверки отлично подойдет любая модель USB-тестера. При подключении к мобильному устройству экран тестера сразу начнет работать, что и будет свидетельствовать о поддержке USB OTG.

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

В некоторых случаях переходник не нужен, так как есть гаджеты, подключаемые к мобильному устройству через его порт — это может быть устаревающий Micro-USB, современный Type-C или, в случае с техникой Apple, — Lightning.

Интересным примером служат флешки, у которых есть сразу несколько разъемов, и которым не нужны переходники для подключения.

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

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

Например, такой кабель пригодится для подключения к смартфону портативного жесткого диска или чего-то аналогичного по потреблению. Кабель можно подключить к сети, компьютеру, или, например, к портативному аккумулятору.

Что еще можно подключить через USB OTG если устройство, к примеру, не поддерживает карты памяти, но информацию с них нужно перенести на смартфон, не используя при этом компьютер, то на помощь могут прийти OTG картридеры. Удобство некоторых моделей в том, что они работают не только с карточками формата microSD, но и с более крупными по размеру SD-картами.

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

Различные модели USB-разветвителей помогут подключить к мобильному устройству сразу несколько гаджетов, особенно если разветвитель имеет внешнее питание.

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

Список гаджетов этим не ограничивается — подключиться также можно к принтеру или камере, или вполне реально использовать проводную гарнитуру, требующую дополнительного питания для подсветки. Еще в продаже можно найти модемы, проводные геймпады, ИК-передатчики, USB-вентиляторы, всевозможные датчики, USB-гирлянды и даже USB-увлажнители воздуха или маленькие пылесосы.

Наличие в устройстве USB OTG дает еще один плюс в виде возможности заряжать другие девайсы и гаджеты. При этом заряжаться будет то устройство, в разъем которого вставляется обычный кабель, а отдает заряд девайс с подключенным переходником USB OTG. Заряжаться могут и аппараты без поддержки «On-the-Go», но вот заряжать что-то у них уже не получится.

Источник: https://club.dns-shop.ru/blog/t-122-drugaya-periferiya/22773-chto-takoe-usb-otg-i-zachem-eto-nujno/

Что такое USB OTG и как его использовать на Android?

Что такое usb накопитель на андроиде

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

USB OTG (от англ. On-The-Go) – стандарт передачи данных через USB-порт, используемый в мобильниках, принтерах, камерах и т.д.

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

OTG может присутствовать в смартфонах и планшетах с разъемами microUSB и Type-C, для обоих типов есть переходники на стандартный USB Type-A.

Как узнать, если ли в смартфоне OTG?

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

Можно проверить наличие OTG через специальное мобильное приложение, например, Easy OTG Checker.

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

Что нужно для работы с OTG?

Каждый андроид оснащен разъемом типа microUSB или USB-C. Внешние накопители и периферийные устройства, как правило, имеют полноразмерный USB, поэтому для их подключения к телефону понадобится специальный кабель или адаптер.

В частности, обратите внимание на переходники типа microUSB или USB-C «папа»/полноразмерный USB «мама». Их можно найти в каждом крупном магазине электроники.

Чтобы не возиться с лишними переходниками, можно купить OTG-флешку с двумя разъемами: один стандартный USB для подключения к компьютеру, второй – micro, mini или Type-C для мобильного устройства. Это полезный аксессуар, который облегчит доступ к данным в любых условиях.

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

Карты памяти и внешние жесткие диски

Файлы с внешних хранилищ можно просматривать через интерфейс смартфона, копировать между устройствами, редактировать, то есть работать с ними привычным образом.

С подключением маленького флеш-накопителя проблем не возникнет, однако внешнему жесткому диску может понадобится источник питания. Кроме того, Android не видит NTFS, поэтому диск должен быть отформатирован в FAT32.

Игровые контроллеры

В 9.0 Pie и более поздних версиях Android есть нативная поддержка контроллера Xbox One. Геймпад от Xbox 360 также без проблем работает через OTG. Android с root-доступом можно превратить в ретро-консоль, подключив к нему геймпад от PlayStation.

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

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

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

Для корректного распознавания клавиш необходимо изменить стандартную раскладку Android. С этим поможет приложение External Keyboard Helper.

Принтер

Как и все вышеперечисленное, принтеры со стандартным plug-and-play USB поддерживают управление через интерфейс Android. Подключив принтер к смартфону, можно запустить печать без необходимости скидывать файлы на ПК или настраивать беспроводную связь.

Однако Android не поддерживает режим USB Mass Storage, поэтому для печати фотографий и документов необходимо использовать PTP или MTP подключение.

Цифровой фотоаппарат

Большой дисплей планшета прекрасно подойдет для того, чтобы управлять настройками камеры и изучать отснятые кадры. Для этого необходимо приложение DSLR Controller и в идеале аппарат марки Canon (с некоторыми моделями Nikon и Sony DSLR Controller тоже работает, однако официально они не поддерживаются).

Заключение

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

Источник: www.makeuseof.com

Источник: https://SetPhone.ru/stati/chto-takoe-usb-otg-i-kak-ego-ispolzovat-na-android/

Работа с устройствами USB в Android

Что такое usb накопитель на андроиде

В недавней статье на Geektimes в х возник вопрос о поддержке в ОС Android периферии, подключенной к шине USB. Действительно, большинство вендорского ПО, к примеру, для работы с принтерами и МФУ, поддерживает только подключение по сети.

Однако это не означает, что в самой ОС Android нет такой возможности — это означает лишь то, что большинство устройств не имеют полноценного USB хоста, и далеко не все имеют поддержку OTG. По сети же могут работать абсолютно все без исключения.

Большинство устройств на Android при наличии порта OTG поддерживают на уровне системы (ядра Linux или стандартных компонентов Android) следующие классы устройств:

  • Устройства ввода — клавиатуры, мыши, джойстики (HID)
  • Накопители (Mass Storage)

Несколько реже:

  • Сотовые модемы
  • Сетевые адаптеры
  • Вебкамеры

Хабы поддерживаются при наличии полноценных хост-портов, но не поддерживаются на портах OTG. Подробнее список устройств, поддерживаемых на уровне ядра Linux, можно получить в sysfs:

$ ls /sys/bus/usb/drivers

Если же модуль в принципе доступен в исходниках ядра Linux, но не включен в Android — не стоит рассчитывать на то, что его получится собрать и расставить на все целевые системы.

Однако, начиная с Android 3.1 (API 12), в системе содержатся средства, достаточные для поддержки на уровне приложения любой USB периферии. Данные средства описаны в разделе USB Host руководства по Android API. Здесь же я хочу привести примеры реальной работы с некоторыми видами устройств.

Права доступа

Как и для прочих действий, Android требует, чтобы приложение получило разрешение на доступ к USB периферии.

Существует 2 способа получить такое разрешение:

  • Задекларировать список устройств в AndroidManifest
  • Явно показать пользователю диалог “разрешить”

Поскольку для моих задач лишние вопросы к пользователю были нежелательны, я использовал первый способ. Итак, нам необходимо добавить в манифест следующее: … А в res/xml/device_filter.

xml вписать следующее: Отмечу, что хотя общепринято указывать VID:PID в 16-ричной системе счисления, здесь они должны быть указаны в десятичной. В документации заявляется, что возможно указание только класса, без VID и PID, но у меня это не стало работать.

Принтеры

На примере принтера я покажу, как непосредственно использовать API android.hardware.usb. На уровне передачи данных все принтеры поддерживают стандартый класс USB устройств: int UsbConstants.USB_CLASS_PRINTER = 7; Класс предельно простой. В рамках этого класса устройство должно поддерживать:

  • Обязательный bulk out endpoind для отправки данных на принтер
  • Опциональный bulk in endpoind для получения статуса принтера
  • 3 управляющих запроса

int GET_DEVICE_ID = 0;int GET_PORT_STATUS = 1;int SOFT_RESET = 2; Код, приведенный ниже, предоставляет функциональность, аналогичную устройству /dev/usb/lp в Linux. Далее нам нужен фильтр, преобразующий исходный документ в пакет данных, понятный конкретной модели принтера. Но это тема иной статьи. Как один из вариантов — можно собрать ghostscript с помощью NDK. Для работы с устройством нам в первую очередь нужно: 1. Найти устройство. В примере для простоты я ищу первый попавшийся: UsbDevice findDevice() { for (UsbDevice usbDevice: mUsbManager.getDeviceList().values()) { if (usbDevice.getDeviceClass() == UsbConstants.USB_CLASS_PRINTER) { return usbDevice; } else { UsbInterface usbInterface = findInterface(usbDevice); if (usbInterface != null) return usbDevice; } } return null;} UsbInterface findInterface(UsbDevice usbDevice) { for (int nIf = 0; nIf < usbDevice.getInterfaceCount(); nIf++) { UsbInterface usbInterface = usbDevice.getInterface(nIf); if (usbInterface.getInterfaceClass() == UsbConstants.USB_CLASS_PRINTER) { return usbInterface; } } return null;}UsbDevice mUsbDevice = findDevice();UsbInterface mUsbInterface = findInterface(mUsbDevice); 2. Получить endpoint’ы: for (int nEp = 0; nEp < mUsbInterface.getEndpointCount(); nEp++) { UsbEndpoint tmpEndpoint = mUsbInterface.getEndpoint(nEp); if (tmpEndpoint.getType() != UsbConstants.USB_ENDPOINT_XFER_BULK) continue; if ((mOutEndpoint == null) && (tmpEndpoint.getDirection() == UsbConstants.USB_DIR_OUT)) { mOutEndpoint = tmpEndpoint; } else if ((mInEndpoint == null) && (tmpEndpoint.getDirection() == UsbConstants.USB_DIR_IN)) { mInEndpoint = tmpEndpoint; }}if (mOutEndpoint == null) throw new IOException("No write endpoint: " + deviceName); 3. Непосредсвенно открыть устройство: mConnection = mUsbManager.openDevice(mUsbDevice);if (mConnection == null) throw new IOException("Can't open USB connection:" + deviceName);mConnection.claimInterface (mUsbInterface, true); 4. После этого мы можем читать и писать в устройство: public int read(final byte[] data) throws IOException { int size = Math.min(data.length, mInEndpoint.getMaxPacketSize()); return mConnection.bulkTransfer(mInEndpoint, data, size, getReadTimeout());} public int write(final byte[] data, final int length) throws IOException { int offset = 0; while (offset < length) { int size = Math.min(length - offset, mInEndpoint.getMaxPacketSize()); int bytesWritten = mConnection.bulkTransfer(mOutEndpoint, Arrays.copyOfRange(data, offset, offset + size), size, getWriteTimeout()); if (bytesWritten

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

Что означают USB-подключения Android: MTP, PTP и USB Mass Storage

Что такое usb накопитель на андроиде

Старые устройства Android поддерживают USB-накопители для передачи файлов с помощью компьютера. Современные устройства Android используют протоколы MTP или PTP — Вы можете выбрать тот, который
предпочитаете.

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

Почему современные устройства Android не поддерживают USB Mass Storage

Запоминающее устройство USB — также известное как «класс устройств USB mass storage», USB MSC или UMS — было способом, которым более ранние версии Android отображали свое хранилище на компьютере.

Когда Вы подключили устройство Android к компьютеру, Вам нужно было специально нажать кнопку «Подключить хранилище к ПК», чтобы сделать хранилище устройства Android доступным для компьютера через USB-накопитель.

При отключении его от компьютера Вам нужно было нажать кнопку «Отключить USB-накопитель».

USB-накопитель — это стандартный протокол, используемый флэш-накопителями, внешними жесткими дисками, SD-картами и другими USB-накопителями. Диск полностью доступен для компьютера, как если бы он был внутренним.

Были проблемы такой работой. Какое бы устройство ни обращалось к хранилищу, ему нужен эксклюзивный доступ. Когда Вы подключили хранилище к компьютеру, оно было отключено от операционной системы Android, работающей на устройстве. Любые файлы или приложения, хранящиеся на SD-карте или USB-накопителе, были недоступны при подключении к компьютеру.

Системные файлы должны были где-то храниться, поэтому у устройства Android есть отдельные разделы /data для «системного хранилища» и /sdcard для «USB хранилища» на одном внутреннем устройстве хранения. Android устанавливал приложения и системные файлы в /data, а пользовательские данные были сохранены в разделе /sdcard.

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

Поскольку файловая система должна была быть доступна с устройства Windows, она должна была быть отформатирована с файловой системой FAT.

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

Android теперь может использовать современную файловую систему ext4 для всех своих разделов, потому что они не должны быть доступны для чтения непосредственно Windows.

Подключение телефона или планшета Android к компьютеру в качестве стандартного USB-накопителя удобно, но есть слишком много недостатков. Поэтому современные устройства Android используют разные протоколы USB-подключения.

MTP расшифровывается как «Media Transfer Protocol». Когда Android использует этот протокол, он представляется компьютеру как «мультимедийное устройство».

Протокол передачи мультимедиа широко рекламировался как стандартизированный протокол для передачи аудиофайлов на цифровые музыкальные проигрыватели с использованием Windows Media Player и аналогичных приложений.

Он был разработан, чтобы позволить другим компаниям медиаплеера конкурировать с iPod Apple и iTunes.

Этот протокол работает совсем не так, как USB-накопитель. MTP работает не на уровне файлов, а на файловой системе Вашего Android-устройства. Ваше устройство Android не предоставляет доступ ко всему устройству хранения Windows.

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

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

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

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

На практике MTP очень похож на USB-накопитель. Например, устройство MTP отображается в проводнике Windows, чтобы Вы могли просматривать и передавать файлы. Linux также поддерживает устройства MTP через libmtp, который обычно входит в состав популярных дистрибутивов Linux. Устройства MTP также должны появиться в файловом менеджере Вашего ПК с Linux.

Apple Mac OS X — это отдельное решение — оно вообще не включает поддержку MTP. Apple iPod, iPhone и iPad используют собственный проприетарный протокол синхронизации вместе с iTunes, так почему же они хотят поддерживать конкурирующий протокол?

Google предоставляет приложение Android File Transfer для Mac OS X. Это приложение является простым MTP-клиентом, поэтому оно будет работать для передачи файлов туда и обратно на Mac. Google не предоставляет это приложение для других операционных систем, поскольку они включают поддержку MTP.

PTP — цифровая камера

PTP означает «Протокол передачи изображений». Когда Android использует этот протокол, он представляется компьютеру как цифровая камера.

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

В этом режиме Ваше устройство Android будет работать с приложениями для цифровых камер, которые поддерживают PTP, но не MTP. Apple Mac OS X поддерживает PTP, поэтому Вы можете использовать режим PTP для передачи фотографий с устройства Android на Mac через USB-соединение без какого-либо специального программного обеспечения.

Если у Вас старое устройство Android, Вы вынуждены использовать USB-накопитель. На современном устройстве Android у Вас есть выбор между MTP и PTP — Вы должны использовать MTP, если у Вас нет программного обеспечения, которое поддерживает только PTP.

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

Источник: https://zen.yandex.ru/media/android_example/chto-oznachaiut-usbpodkliucheniia-android-mtp-ptp-i-usb-mass-storage-5ecfbadd060a786229e6db4e

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

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

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