Как запустить эмулятор Android из командной строки?
Я на Mac, работаю над разработкой Android с терминала. Я успешно создал Это и теперь я пытаюсь запустить его из командной строки в эмуляторе Android. Какая команда запускает эмулятор для моего проекта HelloWorld?
У меня уже есть Android инструменты и платформы-инструменты на моем пути.
Edit:
Как я могу сказать эмулятору, чтобы запустить мой проект HelloWorld из командной строки? Я уже построил проект с муравьем.
16 ответов:
Я предполагаю, что вы создали свой проект и просто должны запустить его, но у вас нет никаких AVDs созданных и должны использовать командную строку для всех действий. Вы должны сделать следующее.
- создайте новое виртуальное устройство (AVD) для нужной вам платформы. Если вам нужно использовать командную строку для создания AVD, вы можете вызвать
android create avd -n <name> -t <targetID>
где targetID-это уровень API, который вам нужен. Если вы можете использовать графический интерфейс, просто введитеandroid avd
и это запустит менеджер, где вы можете сделать тот же. Вы можете прочитать больше о управление AVD через GUI и через командную строку.- запустите AVD либо с помощью команды
emulator -avd <name>
или через ранее запущенный графический интерфейс. Подождите, пока эмулятор полностью загрузится, это займет некоторое время. Вы можете прочитать о дополнительные параметры.- теперь вам нужно установить приложение на ваш AVD. Обычно во время разработки вы просто используете тот же сценарий Ant, который вы использовали для создания проект, просто выберите
install
цель. Однако вы можете установить приложение вручную с помощью командыadb install <path-to-your-APK>
.- теперь переключитесь на эмулятор и запустите приложение, как на любом обычном устройстве, через пусковую установку. Или, в качестве альтернативы, вы можете использовать следующую команду:
adb shell am start -a android.intent.action.MAIN -n <package>/<activity class>
. Например:adb shell am start -a android.intent.action.MAIN -n org.sample.helloworld/org.sample.helloworld.HelloWorld
. Как предложил комментатор, вы также можете заменитьorg.sample.helloworld.HelloWorld
в строку с.HelloWorld
, и это тоже будет работать.
Список всех ваших эмуляторов:
emulator -list-avds
выполнить один из перечисленных эмуляторов:
emulator @name-of-your-emulator
здесь
emulator
здесь:${ANDROID_SDK}/tools/emulator
Я думаю, что лучший способ добраться до него через терминал :
cd ~/Library/Android/sdk/tools
чтобы запустить определенный AVD напрямую:
./emulator -avd {AVD_NAME}
чтобы перечислить использование AVDs:
./emulator -list-avds
просто добавить здесь, когда вы получаете "error: device offline" означает, что соединение с emulator & adb bridge было нарушено из-за времени, затраченного на запуск эмулятора.
вместо повторного запуска эмулятора в этот момент попробуйте ниже двух команд, которые останавливают и снова запускают мост adb.
adb kill-server
adb start-server
здесь вы можете проверить параметры для выполнения этой команды с помощью командной строки:
emulator -avd avd_name [-option [value]] ... [-qemu args]
например, я использую его следующим образом:
emulator -avd ICS_ARM -wipe-data -no-boot-anim -cpu-delay 0
Если вы строго пытаюсь запустить эмулятор из командной строки, попробуйте это в OSX.
"/Applications/Android Studio.app/sdk/tools/emulator" -avd <NAMEOFDEVICE> -netspeed full -netdelay none
вы можете упростить его, добавив псевдоним .bash_profile, и отправка его в фоновое задание.
alias android='/Applications/Android\ Studio.app/sdk/tools/emulator <NAMEOFDEVICE> -netspeed full -netdelay none &'
пусть Баш знает об изменениях.
source ~/.bash_profile
Откройте командную строку и перейдите в
<android-Home>\sdk\tools>emulator -avd <AVD_NAME>
здесь
"emulator"
это команда, используемая для открытия вашего Виртуальное Устройство Android.
(Linux) В вашем терминале скопируйте и вставьте и измените три поля синим цветом
/home/YouUser/Folder/adt-bundle-linux-x86_64-20140702/sdk/tools/emulator64-x86 -avd Android5.1.1 YouUser = user of session in linux Folder = path of folfer Android5.1.1 = You version of android in the emulator,for example (Android4.4.2)
вы можете просмотреть эмуляторы в папку домой cd / home/Youuser/.android / avd/
в настоящее время asuming у вас установлена Android Studio (2.2) в моем случае и только 1 эмулятор вы можете использовать этот лайнер
export ANDROID_SDK_ROOT=~/Library/Android/sdk/ && emulator '@'`emulator -list-avds`
если вы делаете это часто, сделать это проще простого:
$ echo 'export ANDROID_SDK_ROOT=~/Library/Android/sdk/' >> ~/.profile
добавить псевдоним
~.aliases
alias androidup="emulator '@'`emulator -list-avds`"
Напомним
source ~/.profile ~/.aliases
перед тестированиемв следующий раз
$ androidup
The запустить эмулятор из командной строки.
во-первых, создайте новый эмулятор, если он еще не существует:
avdmanager create avd --name "MyEmulator" -k "system-images;android- 26;google_apis;x86"
предполагается, что у вас уже установлен системный образ X86, который соответствует API 26, и установлены API Google.
затем вы можете запустить эмулятор с
emulator @MyEmulator
.
список avd имя доступно на
.android / avd
/SDK_PATH/инструменты/эмулятор -netdelay ни странно полный АВД "AVD_NAME"
в windows, я использую этот сценарий PowerShell, чтобы запустить его.
$em = $env:USERPROFILE+"\AppData\Local\Android\sdk\tools\emulator.exe"; Start-Process $em " -avd Nexus_5X_API_24" -WindowStyle Hidden;
запуск эмулятора из командной строки с помощью dns
расположение программы эмулятора : / Users / {{UserName}} / Library/Android/sdk / tools
Проверьте существующий avd :- эмулятор -список виртуальных
запустить эмулятор с набором dns /Пользователи/{{Имя пользователя}}/библиотека/для Android/SDK/инструменты/эмулятор -АВД Pixel_API_26 -DNS-сервер 8.8.8.8
на Mac (и Linux я думаю), после того, как вы создали свой AVD, вы можете сделать псевдоним:
alias run-android='~/Library/Android/sdk/tools/emulator -avd ${YOUR_AVD_NAME} &'
Примечание: выполнение псевдонима не будет блокировать ваш терминал, если вы этого хотите, просто удалите последний '&'.
выполнить
emulator
Он Сам даст вам ошибку, потому что он ожидает, что в вашем нынешнем положении, у вас есть:/emulator/qemu/${YOUR_PATFORM}/qemu-system-x86_64'
для запуска эмулятора.
Я написал этот простой скрипт оболочки, используя Zenity, который позволяет вам выбрать, какой avd вы хотите запустить. Если у вас нет определенного ANDROID_HOME, вы можете просто заменить его полным путем к эмулятору. Это было бы легко сделать с select вместо Zenity, но я выбрал Zenity, так как я запускаю его из меню xfce-application (хотя a .рабочий стол-файл).
#!/bin/sh opt=$(zenity --title="Choose AVD" --text="Choose which emulator to start" --list \ --column="Devices" --separator="\n" `$ANDROID_HOME/emulator/emulator -list-avds`); $ANDROID_HOME/emulator/emulator -avd $opt