- Экран Android на компьютере. Подключение по USB
- Пошаговая инструкция
- Шаг 1
- Шаг 2
- Шаг 3
- Шаг 4
- Шаг 6
- Работа с устройствами USB в Android
- Права доступа
- Принтеры
- Преобразователи USB-Serial
- Резюме
- Как транслировать экран Android на ПК и управлять им: бесплатная программа без Root
- Содержание
- Установка и запуск scrcpy
- Настройка параметров трансляции
- Трансляция не только картинки, но и звука
- Любителям побольше: как подключить смартфон к телевизору
- Проводное подключение
- MHL
- SlimPort
- USB Type-C DisplayPort Alternate Mode
- Беспроводное подключение
- Miracast
- Chromecast
- Заключение
Экран Android на компьютере. Подключение по USB
В настоящем руководстве описан процесс установки и настройки бесплатных инструментов, позволяющих реализовать передачу экрана Android-устройства на компьютер через USB-кабель. Существует много программ для решения этой задачи, но большинство из них, кроме того, что платные, еще и требуют наличие root’a в устройстве на Android. Еще одним преимуществом есть то, что нижеописанный инструмент не нуждается в установке дополнительного программного обеспечения на устройство Android. Инструкция, в первую очередь, написана для операционной системы Windows, но все нижеописанное справедливо и для других операционных систем (MacOS, Linux), так как упоминаемое в статье ПО кроссплатформенное.
Пошаговая инструкция
Вам понадобится следующее программное обеспечение:
Шаг 1
Скачайте и установите «Java» на компьютер. Для работы приложения «Droid at Screen» достаточно скачать пакет «JRE».
Перед скачиванием инсталлятора установите переключатель в положение «Accept License Agreement». Обязательно скачивайте файл, содержащий в названии разрядность вашей системы Windows.
Шаг 2
Найдите на странице загрузки «Android SDK Tools» раздел «SDK Tools only» и нажмите на загрузку, как показано на картинке.
Рекомендация! Во время установки укажите путь установки в корень системного диска для упрощения доступа к папке с ADB-драйверами.
После установки должен автоматически запуститься «Android SDK Manager». Нажмите «Deselect All», отметьте позицию «Android SDK Platform-tools» и нажмите на кнопку «Install 1 package…».
Установите переключатель в «Accept License» и нажмите на кнопку «Install». Дождитесь завершения установки.
Шаг 3
Распакуйте и запустите апплет «Droid at Screen». Выберите команду «ADB > ADB Executable Path» в главном меню программы.
Укажите путь к установленным на 2-м шаге ADB-драйверам: войдите в папку с «Android SDK Tools», подпапку «platform-tools», выберите файл «adb.exe» и нажмите «ОК».
Шаг 4
Возьмите ваше Android-устройство, зайдите в:
(для Android 2+) «Настройки > Приложения > Разработка» и включите опцию «Отладка USB».
(для Android 4+) «Настройки > Для разработчиков > ВКЛ (справа вверху)» и включите опцию «Отладка по USB».
Шаг 6
Соедините Android-устройство с компьютером USB-кабелем. Если драйвера USB уже присутствуют в системе Windows, должно появиться окно с экраном вашего гаджета. На панели слева расположены полезные кнопки поворота и масштабирования экрана подключенного устройства на компьютере.
Если Windows не обнаружит ваше устройство, вам нужно скачать и установить драйвера для 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 периферией достаточно проста и логична. Безусловно, реализация протоколов некоторых конкретных устройств не блещет простотой — но это проявится в любой системе в одинаковой степени.
Все приведенные примеры я взял из реального проекта, лишь исключил очевидные проверки, оставив только ключевые строки.
Источник
Как транслировать экран Android на ПК и управлять им: бесплатная программа без Root
Scrcpy — программа с открытым исходным кодом от разработчика с GitHub, которая позволяет транслировать изображение с дисплея Android-смартфона на ПК. К тому же, она позволяет управлять смартфоном прямо с компьютера, на который транслируется изображение. Для того, чтобы пользоваться scrcpy, не нужно устанавливать дополнительные программы на устройство или настраивать Root-доступ. По заявлениям разработчика, трансляция картинки происходит с приятно малой задержкой (35
70 мс), высокой плавностью (30
60 к/c) и в родном разрешении.
Передача картинки между смартфоном и компьютером в основном осуществляется через USB-соединение и ADB (Android Device Bridge).
Содержание
Установка и запуск scrcpy
Чтобы установить программу, нужно проделать следующие действия:
- Скачать последнюю версию с GitHub.
- Создать на диске C папку «scrcpy».
- Скопировать содержимое архива туда.
- Возможно, понадобится установить драйвера ADB для вашего смартфона (их можно найти на специализированных ресурсах).
На этом установка программы завершена, но перед её использованием нужно настроить смартфон, с которого вы будете транслировать картинку:
- Пройдите в пункт «О телефоне» и включите там режим разработчика. Для этого вам нужно 7 раз нажать либо на номер сборки устройства, если у вас «чистый» Android, либо на версию MIUI, если у вас MIUI.
- В меню разработчика нужно включить параметры «Отладка по USB», «Отладка по USB (Настройки безопасности)» и «Установка через USB» (если вам понадобится звук).
- Подключите смартфон к компьютеру по USB-кабелю.
Теперь устройство готово к трансляции картинки на ПК. Использование программы по кабелю осуществляется следующим образом:
- Нажмите Win+R и в открывшемся окне введите «cmd», нажмите ОК.
- В открывшейся командной строке введите «cd c:/scrcpy», нажмите Enter.
- Затем введите «scrcpy», снова нажмите Enter.
- Если всё сделано правильно, должно появиться окно с содержимым дисплея вашего смартфона.
Также можно транслировать картинку и по беспроводу. Scrcpy работает через adb, который позволяет управлять устройством без кабеля:
- Подключите смартфон к компьютеру по USB-кабелю. Это нужно для того, чтобы получить его IP-адрес.
- Подключитесь к той же сети Wi-Fi, к которой подключён ваш компьютер.
- В командной строке введите «cd c:/scrcpy», нажмите Enter.
- Затем введите «adb shell ip route» чтобы получить IP-адрес устройства, нажмите Enter.
- Введите «adb tcpip 5555», снова нажмите Enter.
- Отсоедините USB-кабель от смартфона.
- Подключитесь к устройству посредством команды «adb connect DEVICE_IP:5555» (где DEVICE_IP — IP-адрес устройства. В итоге должно получиться что-то наподобие: «adb connect 192.168.1.1:5555»).
- Затем введите «scrcpy» и вновь нажмите Enter.
Настройка параметров трансляции
Программа позволяет задать некоторые параметры для передаваемой картинки. Полный список таких параметров можно посмотреть на странице GitHub, здесь же я опишу самые основные:
- Изменение разрешения картинки: «scrcpy -m 1024». После -m задаётся количество пикселей по вертикали, программа автоматически подберёт количество пикселей по горизонтали в соответствии с соотношением сторон вашего устройства.
- Смена битрейта: «scrcpy -b 2M». После -b задаётся необходимый битрейт, который по умолчанию составляет 8 Мбит.
- Ограничение количества кадров: «scrcpy —max-fps 15». После —max-fps задаётся необходимое количество кадров.
Чтобы применить несколько параметров сразу, нужно написать их последовательно, например, следующим образом: «scrcpy -m 1024 -b 2M —max-fps 15».
Трансляция не только картинки, но и звука
Чтобы передавался ещё и звук, нужно установить и запустить программу sndcpy, которую также можно скачать с GitHub (нужно скачать архив под названием «sndcpy-with-adb-windows»). Стоит уточнить, что для передачи звука нужен Android 10 и установленный на компьютере плеер VLC.
- Установите sndcpy по аналогии с scrcpy.
- Подключите смартфон к компьютеру по USB-кабелю
- Нажмите Win+R и в открывшемся окне введите «cmd», нажмите ОК.
- В командной строке введите «cd c:/sndcpy», нажмите Enter.
- Затем введите «sndcpy», снова нажмите Enter.
- На ваш смартфон установится программа, которая запросит разрешение на трансляцию звука, нажмите «Начать».
Звук продолжит играть со смартфона, чтобы избавиться от этого, просто убавьте громкость до нуля. Она регулируется на двух устройствах независимо друг от друга. Чтобы остановить передачу звука, нужно либо отключить кабель от устройства, либо нажать соответствующую кнопку на панели уведомлений смартфона.
Источник
Любителям побольше: как подключить смартфон к телевизору
Современные смартфоны — это полноценные мультимедийные центры. У них не вызывает проблем даже проигрывание фильмов в Ultra HD. Но не будешь же смотреть блокбастеры на дисплее с диагональю в лучшем случае шесть дюймов? Тут-то на помощь и приходит возможность подключить гаджет к телевизору. Да и искать видео на YouTube, набирая его название с пульта, совсем неудобно — проще стримить со смартфона. И, конечно, показывать всей семье отснятые на него фото и видео гораздо комфортнее на экране телевизора. Какие способы для сопряжения смартфона и ТВ существуют и что вам понадобится — расскажем в статье.
Проводное подключение
Подключить смартфон к телевизору или монитору проводом можно как минимум тремя способами. Причём выбор конкретного для старых гаджетов обуславливается их возможностями, а для современных флагманов — только вашими предпочтениями. Рассмотрим все по порядку.
MHL
На сегодняшний день наиболее распространённый способ подключения смартфона к телевизору или монитору — довольно запутанный стандарт MHL. Причина сложностей кроется в том, что MHL определяет только метод передачи данных в HDMI-вход внешнего монитора, но не требования к физическому интерфейсу. В результате помимо четырёх версий стандарта MHL существует по меньшей мере четыре физических интерфейса. К счастью, обычному пользователю об этом знать не нужно — достаточно приобрести адаптер.
Единственное, о чём стоит побеспокоиться — заранее выяснить, поддерживает ли ваш аппарат MHL в принципе. С большинством флагманов и устройствами, близкими к ним по характеристикам и позиционированию, проблем не возникнет. Но будет нелишним убедиться в этом на сайте производителя или узнать о наличии поддержки у владельцев смартфонов.
Переживать о том, что у вас в смартфоне разъём USB Type-C или наоборот, Micro-USB, не нужно: на китайских площадках в ассортименте продаются кабели и адаптеры для обоих типов разъёмов. Следует помнить, что большинству MHL-адаптеров для работы необходимо внешнее питание. Несмотря на существование «пассивных» адаптеров, не требующих подключения дополнительных кабелей, они должны также поддерживаться телевизором и широкого распространения не получили.
Цена решения: от 300 рублей.
SlimPort
SlimPort — тот же MHL, только основанный не на HDMI, а на стандарте DisplayPort. Однако этого вы можете даже не заметить: есть огромное количество адаптеров SlimPort, имеющих на выходе разъём HDMI. Исторически данный стандарт на безальтернативной основе использовался в смартфонах линейки Nexus, в первую очередь из-за отсутствия необходимости для Google платить лицензионные отчисления. Сейчас стандарт практически вымер, а если и встречается в новых аппаратах, то, как правило, вместе с MHL. Посмотреть список совместимых устройств можно на официальном сайте разработчика стандарта.
Цена решения: от 600 рублей.
USB Type-C DisplayPort Alternate Mode
Одной из особенностей нового стандарта USB 3.1 и разъёма USB Type-C стала возможность программно задействовать некоторые коннекторы последнего для других протоколов передачи данных — так называемый Alternate Mode (альтернативный режим). В смартфонах получил распространение DisplayPort Alternate Mode (сокращённо — DP Alt Mode). Как нетрудно догадаться, режим обеспечивает прямую передачу сигналов DisplayPort в разъём USB Type-C. Главное преимущество использования DP Alt Mode — отсутствие необходимости внешнего питания. С другой стороны, это может быть и минусом: подключить смартфон к телевизору и зарядке одновременно получится только посредством специальных док-станций, либо придётся взять беспроводное зарядное устройство.
Несмотря на название, DP Alt Mode также совместим со стандартами HDMI и даже DVI — всё зависит от того, какой кабель вы выберете. Ну а использовать его удастся не только со смартфоном, но и с любым ноутбуком, поддерживающим Thunderbolt 3.
Смартфоны с поддержкой DP Alt Mode пока можно пересчитать по пальцам: в их число входят Huawei Mate 10, Samsung Galaxy S8/S9, Microsoft Lumia 950 и LG G5. Словом, все новинки, которые оснащены USB версии 3.1, а число таких гаджетов со временем будет только расти.
Цена решения: от 600 рублей.
Беспроводное подключение
Несмотря на развитие интерфейсов USB и Thunderbolt, будущее, по мнению многих, за беспроводными технологиями. Тут уже покупкой простого кабеля или адаптера не обойтись: если ваш телевизор «глупый», придётся раскошелиться на специальный донгл.
Miracast
Этот независимый стандарт был разработан альянсом Wi-Fi и применяет технологию Wi-Fi Direct для подключения смартфона к телевизору. Android нативно поддерживает технологию с версии 4.2 KitKat. Однако в зависимости от производителя гаджета соответствующее приложение может называться по-разному. Например, в смартфонах линейки Honor используется название MirrorShare. Стандарт широко распространён: он поддерживается всеми современными Android-устройствами и большинством умных телевизоров.
Даже если у вас дома «глупый» телевизор (или вообще обычный монитор), вы легко сможете добавить к нему поддержку Miracast, подключив один из множества специализированных донглов или ТВ-приставку с функцией Miracast-сервера. Мы протестировали работу Miracast со смартфоном Honor 9 Lite и донглом Prestigio PMD-1.
Honor 9 Lite
Prestigio PMD-1
Никакой возни такая связка не предусматривает: достаточно выбрать в настройках смартфона пункт MirrorShare, а затем — название обнаруженного донгла. Подключение занимает около 20 секунд, после чего на экране монитора появляется дублированное изображение со смартфона. Трудностей с временным лагом или низким fps нет, но надо помнить, что разрешение при использовании Miracast имеет ограничение 1920х1200 пикселей.
Самые дешёвые донглы с поддержкой Miracast стоят не дороже специальных кабелей. Но во избежание проблем лучше обратить внимание на гаджеты проверенных производителей.
Цена решения: бесплатно (при наличии Smart TV) либо от 600 рублей (донгл).
Chromecast
Google продаёт собственные донглы для трансляции контента на телевизоры — Chromecast. Эта технология закрытая и кардинально отличается от Miracast. Если последняя — простое «отзеркаливание» экрана смартфона на телевизор, то для работы Chromecast требуется поддержка конкретных приложений. Впрочем, среди них есть немало аудио- и видеоплееров и, что немаловажно, браузер Chrome — этого должно хватить большинству пользователей. Справедливости ради, трансляция дисплея смартфона целиком также с некоторых пор поддерживается в Chromecast, но работает совсем не идеально.
Зато с Chromecast смартфон становится многозадачным. Так, начав трансляцию ролика с YouTube, вы можете открыть любую другую программу или даже заблокировать гаджет — воспроизведение всё равно будет продолжено.
В отличие от Miracast, использующего Wi-Fi Direct, Chromecast для работы требует Wi-Fi роутер, что несколько ограничивает область применения девайса.
Цена решения: от 2500 рублей.
Заключение
Каждый из предложенных способов трансляции картинки со смартфона на телевизор имеет свои преимущества и недостатки. Если нужно максимальное качество за небольшую цену, стоит выбрать проводной способ, если вас волнует только удобство — Miracast, а для максимальной гибкости и возможности транслировать Ultra HD — Chromecast. Правда, в последнем случае бюджет превысит 5000 рублей, так что всё зависит только от ваших потребностей.
Источник