Иногда бывает, что adb видит сразу несколько устройств — к примеру, эмулятор и реальное устройство, подключенное к компьютеру, из-за чего выполнять команды становится невозможным (будет писаться waiting for device).
# adb devices
List of devices attached
emulator-5554 device
HT9TWA12709 device
Допустим, вам нужно работать с реальным устройством, но подключенный эмулятор вроде как не позволяет это сделать.
Есть два выхода:
1. Указывать ключ -d, если хотим использовать реальное устройство (подключенное через USB) или ключ -e, если хотим использовать эмулятор
2. Выполнить команду adb -e reboot bootloader, которая в данном уберет эмулятор из списка
Бывает, что порой необходимо посмотреть поведение сайта на мобильном устройстве, но самого устройства под рукой нет. В такой ситуации на помощь приходят эмуляторы мобильных браузеров. В частности, на сайте Opera уже давно есть два эмулятора — один Opera Mobile (exe), другой — Opera Mini (java-апплет). Если говорить про Opera Mobile, то в настройках этого эмулятора можно также указывать, на каком телефоне необходимо открыть сайт (поддерживаются наиболее популярные модели смартфонов).
Если кто не знал, то для системы семейства Windows есть эмуляторы среды *nix. Одним из самых известных является Cygwin, который до сих пор активно развивается. Microsoft также не осталась в стороне, и имеет в своем распоряжении пакет под названием Microsoft Windows Services for UNIX (SFU). Он, в отличии от Cygwin, уже не обновляется (последняя версия 3.5 датируется 2007 годом), а поддержка заканчивается в этом году.
SFU 3.5, размером в 220 МБ, включает в себя:
Более 350 утилит Unix, таких как vi, ksh, csh, ls, cat, awk, grep, kill, и т. п.
компилятор GCC 3.3, в том числе заголовочные файлы и библиотеки (через Microsoft libc)
cc-подобный упаковщик для C/C++ компилятора командной строки Microsoft Visual Studio
отладчик GDB
сервер и клиент NFS
Демоны pcnfsd
Утилиты и библиотеки X11
Утилиты для монтирования ресурсов NFS как разделяемые каталоги Windows и наоборот (гейтвеи)
Сервер Network Information Service, сопряжённый с Active Directory
Некоторые утилиты синхронизации токенов аутентификации Windows и Unix
SFU не включает в себя: bash, OpenSSH, sudo, CVS, ClamAV, bzip2, gmake, curl, emacs, Apache, XView, Ruby, Tcl, Python.
Установщик Cygwin, в свою очередь, имеет крохотный размер за счет того, что выкачивает из Интернета все необходимые и выбранные пакеты на этапе установки. Список того, чтобы можно установить — внушителен. Те пакеты, которые не включены в SFU (OpenSSH, Apache, curl и т.д.) доступны из репозиториев для Cygwin.