Estoy en Mac, trabajando en el desarrollo de Android desde la terminal. He creado con éxito el proyecto HelloWorld y ahora estoy tratando de ejecutarlo desde la línea de comandos en el emulador de Android. ¿Qué comando ejecuta el emulador para mi proyecto HelloWorld?
Ya tengo las herramientas de Android y las herramientas de plataforma en mi RUTA.
Editar:
¿Cómo le digo al emulador que ejecute mi proyecto HelloWorld desde la línea de comandos? Ya he construido el proyecto con hormiga.
android
command-line
android-emulator
console
console-application
Thierry Lam
fuente
fuente
avdmanager
y lanzar conemulator
.Respuestas:
Supongo que ha creado su proyecto y solo necesita iniciarlo, pero no tiene ningún AVD creado y tiene que usar la línea de comando para todas las acciones. Tienes que hacer lo siguiente.
android create avd -n <name> -t <targetID>
donde targetID es el nivel de API que necesita. Si puede usar la GUI, simplemente escribaandroid avd
y se abrirá el administrador, donde puede hacer lo mismo. Puede leer más sobre la administración de AVD a través de la GUI y la línea de comandos .emulator -avd <name>
o mediante la GUI iniciada anteriormente. Espere hasta que el emulador se cargue completamente, lleva un tiempo. Puede leer sobre opciones adicionales aquí .install
destino. Sin embargo, puede instalar la aplicación manualmente usando el comandoadb install <path-to-your-APK>
.adb shell am start -a android.intent.action.MAIN -n <package>/<activity class>
. Por ejemplo:adb shell am start -a android.intent.action.MAIN -n org.sample.helloworld/org.sample.helloworld.HelloWorld
. Como sugirió un comentarista, también puede reemplazarorg.sample.helloworld.HelloWorld
en la línea anterior con solo.HelloWorld
, y también funcionará.fuente
adb install <path-to-your-APK>
, consigoerror: device not found
. Si ejecuto el emulador en un shell y el comando de instalación adb en otro, obtengoerror: device offline
. ¿Cómo configuro un dispositivo virtual emulado?adb devices
comando.adb kill-server; adb start-server
si no aparece nadaadb devices
Lista todos tus emuladores:
Ejecute uno de los emuladores enumerados con
-avd
bandera:donde
emulator
está debajo:fuente
cd
ingresar a la carpeta $ ANDROID_SDK / tools o no funcionará.emulator
más a menudo, ¿por qué no crea un alias:nano ~/.bashrc
> agregaralias emulator='$ANDROID_HOME/tools/emulator'
, guardar. ~/bashrc
y listo? (reemplaceANDROID_HOME
con la variable correcta utilizada o la ruta estática a la carpeta de Android).tools
carpeta, realmente no funcionará. Tengo errorPANIC: Missing emulator engine program for 'x86' CPU.
. (Estoy en Linux, OpenSUSE). Después de que naveguétools
y luego simplemente corríemulator -avd "{name}"
, funcionó.Creo que la mejor manera de llegar a través de la terminal es:
Para ejecutar un determinado AVD directamente:
Para enumerar sus AVD use:
fuente
./
como parte delemulator
comando en una ruta / alias?~/Android/Sdk/emulator
.Solo para agregar aquí, cada vez que aparece "error: dispositivo fuera de línea" significa que la conexión con el emulador y el puente adb se ha interrumpido debido al tiempo empleado en el inicio del emulador.
En lugar de reiniciar el emulador en este punto, intente debajo de dos comandos que se detienen y comience adb bridge nuevamente.
fuente
Aquí puede verificar las opciones para ejecutar este comando a través de la línea de comandos:
Por ejemplo, lo uso así a continuación:
fuente
CMD abierto
fuente
Si está intentando ejecutar estrictamente el emulador desde la línea de comandos, intente esto en OSX.
Puede simplificarlo agregando un alias al .bash_profile y enviándolo a un trabajo en segundo plano.
Deje que Bash sepa sobre los cambios.
fuente
NAMEOFDEVICE
con el nombre real del emulador. haz unaemulator -list-avds
para obtener una lista de los avds que tienes en tu sistema.Abra el símbolo del sistema y vaya a
<android-Home>\sdk\tools>emulator -avd <AVD_NAME>
Aquí
"emulator"
está el comando utilizado para abrir su dispositivo virtual Android .fuente
Si tiene Git Bash, puede abrir su emulador con un doble clic, con alguna configuración inicial (probado solo en Windows 10) :
cd ~/AppData/Local/Android/sdk/emulator
./emulator -list-avds
y tome nota del nombre del emulador.MY_EMULATOR
por ejemplo.Abra el Bloc de notas y agregue estas dos líneas (inserte el nombre de su emulador en lugar de
MY_EMULATOR
):cd ~/AppData/Local/Android/sdk/emulator; ./emulator -avd MY_EMULATOR
Guarde el archivo en algún lugar conveniente como myfile. sh . Puede cambiar "myfile" como más le convenga, pero se necesita la extensión .sh .
chmod +x myfile.sh
. Recuerde poner el nombre de su archivo en lugar de myfile .¡Y eso es! A partir de ahora, cada vez que necesite iniciar ese emulador, simplemente ubique myfile.sh y haga doble clic en él y espere a que se inicie su emulador de Android.
fuente
(Linux) En su terminal Copie y pegue y cambie los tres campos en azul
puedes ver los emuladores en tu carpeta home cd /home/Youuser/.android/avd/
fuente
El
android create avd
comando está en desuso. Ahora se recomienda usaravdmanager
en su lugar para iniciar emuladores desde la línea de comandos.Primero, cree un nuevo emulador si aún no existe:
Esto supone que ya tiene instalada una imagen del sistema X86 que coincide con la API 26 y tiene instaladas las API de Google.
Luego puede iniciar el emulador con
emulator @MyEmulator
.fuente
Hoy en día, suponiendo que tenga Android Studio instalado (2.2) en mi caso y solo 1 emulador, puede usar este forro
Si haces esto a menudo, hazlo más fácil:
Agregar un alias a
~.aliases
Recordar
source ~/.profile ~/.aliases
antes de probarloLa próxima vez solo
$ androidup
fuente
lista de nombre avd disponible en
fuente
En Windows, uso este script de PowerShell para iniciarlo.
fuente
fuente
En Mac (y Linux, creo), después de haber creado su AVD, puede crear un alias:
alias run-android='~/Library/Android/sdk/tools/emulator -avd ${YOUR_AVD_NAME} &'
Nota : la ejecución del alias no bloqueará su terminal, si lo desea, simplemente elimine el último '&' .
Ejecutarlo
emulator
solo le dará un error porque espera que, en su posición actual, tenga:/emulator/qemu/${YOUR_PATFORM}/qemu-system-x86_64'
para iniciar el emulador.fuente
Escribí este simple script de shell usando Zenity que te permite elegir qué avd quieres ejecutar. Si no tiene ANDROID_HOME definido, puede reemplazarlo con la ruta completa al emulador. Esto sería fácil de hacer con select en lugar de Zenity también, pero opté por Zenity ya que lo estoy ejecutando desde el menú de la aplicación xfce (a través de un archivo .desktop).
fuente
Ejecute el primer emulador disponible:
fuente
~/Library/Android/sdk/tools/emulator -avd $(~/Library/Android/sdk/tools/emulator -list-avds | head -1)
Llego tarde, aquí, pero quiero compartir, así que puede ser útil para alguien y para mí cuando sea necesario más tarde :), así que a continuación se muestra la forma de abrir el emulador desde la línea de comandos con un comando usando el script bash. Estoy usando MX Linux pero el proceso es el mismo en todos los sistemas operativos
1- Primero verifica los emuladores instalados
resultará como abajo
2- abre cualquier editor de texto plano o código y crea un nuevo archivo y escribe como se muestra a continuación
Nexus_4_API_28 es el emulador que quiero abrir, escriba el suyo que obtuvo del primer paso
guarde este archivo con la extensión .sh
3- Luego, cambie los permisos en el archivo para hacerlo ejecutable:
4- Ahora abra el emulador simplemente ejecutando este archivo de script bash con el siguiente comando
fuente
Iniciando el emulador desde la línea de comando con ayuda de dns
Ubicación del programa del emulador: / Users / {{UserName}} / Library / Android / sdk / tools
Compruebe avd existente: - emulator -list-avds
Inicie el emulador con dns set / Users / {{UserName}} / Library / Android / sdk / tools / emulator -avd Pixel_API_26 -dns-server 8.8.8.8
fuente
Consulte las instrucciones a continuación para Ubuntu Linux con zsh :
nano ~/.zshrc
para editar su perfilsource ~/.zshrc
o simplemente cierre la sesión y vuelva a iniciarlaemulator -help
en la terminalNOTA : Debe ser igual
bash
al reemplazar.zshrc
con.bashrc
fuente