- Как задать конфигурацию USB по умолчанию в Android 10
- Конфигурация USB: RNDIS, MTP, PTP, MIDI. Что это такое на телефоне Android?
- Пункты меню
- Конфигурация USB на Android — что это и как настроить?
- Работа с устройствами USB в Android
- Права доступа
- Принтеры
- Преобразователи USB-Serial
- Резюме
- Что означают USB-подключения Android: MTP, PTP и USB Mass Storage
- Почему современные устройства Android не поддерживают USB Mass Storage
- MTP — медиаустройство
- PTP — цифровая камера
Как задать конфигурацию USB по умолчанию в Android 10
Ваш ПК или ноутбук не видит телефон после обновления его до Android 10 при подключении через USB? Не стоит расстраиваться. Это нормально: вам просто нужно задать конфигурацию USB по умолчанию в меню настроек системы.
При этом у вас появится возможность выбрать один из пяти вариантов подключения:
- Передача файлов: Передача файлов на ПК / Android или с него или запуск Android Auto.
- USB-модем: ведет себя как внешний модем для ПК.
- MIDI: используется при подключении телефона к MIDI-устройству (например, цифровой клавиатуре).
- PTP: после подключения ваше устройство будет отображаться на ПК в виде цифровой камеры.
- Без передачи данных: никаких действий не предпринимается.
Одна вещь, которую вы больше не получите после установки Android 10 – это режим USB накопителя (Mass Storage), которое раньше была на Android устройствах. USB Mass Storage — это стандартный протокол для всех типов запоминающих устройств, в котором ваш телефон становится полностью доступным для ПК, как если бы он был внешним диском. Проблема этого метода заключается в том, что ПК требует эксклюзивного доступа к хранилищу Android.
По соображениям безопасности эта опция была убрана в пользу передачи файлов.
Как задать конфигурацию USB по умолчанию в Android 10
Для этого вам нужно будет прежде всего попасть в скрытое меню настроек системы «Для разработчиков»
Чтобы включить меню для разработчиков мам нужно зайти в меню настроек системы, в раздел «О телефоне» («О планшете»), где в самом его конце вы увидите пункт «Номер сборки». Нажимайте на него до тех пр, пока не получите сообщение о том, что опции разработчика включены.
После этого вернитесь в главное меню настроек системы и откройте «Система» -> «Дополнительно» -> «Для разработчиков». Здесь вы найдете пункт «Конфигурация USB по умолчанию», нажав на который вы сможете выбрать один из пяти упомянутых выше режимов. Более простым способом найти эту опцию в меню настроек системы будет набрать USB в строке поиска настроек.
Теперь, когда вы подключите ваше Android устройство через USB-соединение, оно будет вести себя так как вы хотели бы.
Источник
Конфигурация USB: RNDIS, MTP, PTP, MIDI. Что это такое на телефоне Android?
В режиме разработчика на смартфоне Андроид пользователь может найти массу крайне интересных пунктов меню, которые зачастую вызывают большой интерес. В этой статье мы рассмотрим подраздел «Конфигурация USB» и узнаем, что обозначают пункт этого подраздела.
Для начала откроем режим разработчика. Пример на базе смартфона Samsung. Идем в настройки.
Далее находим раздел «Параметры разработчика» или «Режим разработчика. Если он у вас вдруг отключен, включите его с помощью нашей инструкции.
Включаем режим при необходимости и находим пункт «Конфигурация USB» или «Конфигурация USB по умолчанию» или «Выбор настройки USB», например:
Пример на Huawei:
Видим следующее (Samsung):
Что значит этот подраздел? С его помощью вы можете выбрать, какое действие используется при подключению смартфона к компьютеру или ноутбуку. К примеру, вы можете включить передачу файлов, а можете — только передачу изображений и видео.
Теперь пройдемся по каждому пункту.
Пункты меню
Передача файлов (MTP или Media Transfer Protocol). Передача любых доступных файлов, будь то музыка, видео, фотографии, документы и т.д.
Передача изображений (MTP или Picture Transfer Protocol ). В этом режиме при подключении смартфона к компьютеру или ноутбуку и после разблокировки экрана становится доступна передача изображений, а также видеороликов.
USB-модем (RNDIS или USB Ethernet). Подключается как USB-модем, то есть вы можете использовать смартфон как точку доступа для ПК или ноутбука.
MIDI. Позволяет использовать ваш смартфон как MIDI-устройство.
Аудиоисточник. Использование вашего смартфона как источник вывода звука.
Только зарядка. В этом случае доступ к данным после разблокировки экрана не осуществляется, смартфон лишь заряжается от вашего ПК или ноутбука.
Есть один нюанс. Некоторые смартфоны при выборе одного из режимов используют выбранный вами пункт по умолчанию постоянно. Так, если вы выбрали «Только зарядка», то при подключении смартфона к ПК или ноутбуку каждый раз будет использовать именно указанный вариант подключения. Если выбрали «Передача файлов», то после подключения и разблокировки рабочего стола каждый раз будет доступна файловая система смартфона и для любого компьютера, что может быть опасно в некоторых случаях. Будьте внимательны.
Друзья! Если наш сайт помог вам или просто понравился, вы можете помочь нам развиваться и двигаться дальше. Для этого можно:
- Оставить комментарий к статье.
Источник
Конфигурация USB на Android — что это и как настроить?
Зачем нужен и как настроить раздел конфигурация USB на смартфоне?
В операционной системе Android есть много полезных опций и настроек, которые часто скрыты от рядовых пользователей. Одна из них — конфигурация USB. Функция расположена в изначально закрытом разделе смартфона — «Для разработчиков«. Также меню выбора конфигурация USB открывается сразу после того, как мы подсоединяем смартфон к компьютеру, используя стандартный кабель USB.
Конфигурация USB — раздел, где расположены дополнительные режимы подключения смартфона по USB. Когда мы подключаем гаджет к компьютеру через USB-кабель, можно выбрать одну из следующих конфигураций:
- Зарядка. Аккумулятор смартфона начнет заряжаться от компьютера. Больше ничего не произвойдет.
- MTP (Media Transfer Protocol). Режим, который используется для передачи файлов (изображений, текстовых документов, музыки) со смартфона на компьютер и наоборот.
- PTP (Picture Transfer Protocol). Это специальный протокол, который используется для передачи изображений. В этом режиме можно переносить изображения со смартфона на компьютер или принтер для печати.
- RNDIS (USB Ethernet). Это спецификация интерфейса удаленного сетевого драйвера. С помощью этого режима можно создать виртуальный канал Ethernet. Для этого используется сеть.
- Источник аудио. Режим, который использует интерфейс USB для вывода звука с компьютера.
- MIDI. Этот режим дает возможность использовать смартфон в качестве MIDI-устройства: например, MIDI-клавиатуры для создания музыкальных композиций в специализированных программах.
В разделе «Конфигурация USB» можно выбрать, какой из режимов будет использоваться по умолчанию при подключении к ПК, ноутбукам и другим устройствам. Выбор здесь за каждым пользователем — кому-то нужна только зарядка, а кто-то планирует переносить данные с телефона на ПК (или обратно). Изменить настройку можно в любой момент.
Источник
Работа с устройствами USB в Android
В недавней статье на 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 устройств:
Класс предельно простой. В рамках этого класса устройство должно поддерживать:
- Обязательный bulk out endpoind для отправки данных на принтер
- Опциональный bulk in endpoind для получения статуса принтера
- 3 управляющих запроса
Код, приведенный ниже, предоставляет функциональность, аналогичную устройству /dev/usb/lp в Linux. Далее нам нужен фильтр, преобразующий исходный документ в пакет данных, понятный конкретной модели принтера. Но это тема иной статьи. Как один из вариантов — можно собрать ghostscript с помощью NDK.
Для работы с устройством нам в первую очередь нужно:
1. Найти устройство. В примере для простоты я ищу первый попавшийся:
2. Получить endpoint’ы:
3. Непосредсвенно открыть устройство:
4. После этого мы можем читать и писать в устройство:
5. По завершении работы — закрыть устройство:
Преобразователи USB-Serial
В отличие от притеров, преобразователи USB-Serial гораздо менее стандартизированы. Существует несколько распространенных чипов, для которых существенно отличается установка параметров последовательного порта — битрейта, чётности и проч. К счастью, есть библиотека github.com/mik3y/usb-serial-for-android, поддерживающая практически все существующие чипы. Библиотека полностью скрывает USB API, сводя все необходимые действия к минимуму вызовов с минимумом параметров.
1. Найти и открыть устройство:
2. Установить параметры последовательного порта:
3. Читать и писать в порт:
4. По завершении работы — закрыть порт:
Резюме
Надеюсь, что мне удалось показать, что работа с USB периферией достаточно проста и логична. Безусловно, реализация протоколов некоторых конкретных устройств не блещет простотой — но это проявится в любой системе в одинаковой степени.
Все приведенные примеры я взял из реального проекта, лишь исключил очевидные проверки, оставив только ключевые строки.
Источник
Что означают USB-подключения Android: MTP, PTP и USB Mass Storage
Старые устройства 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 — медиаустройство
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.
Источник