Como posso script emulator genymotion paira lançair um avd determinado, sem cabeça?

Existe alguma maneira de lançair pela linha de command um avd determinado e tê-lo registrado via adb ?

Também preferiria que o emulador fosse lançado sem cabeça.

  • como enviair HttpRequest e obter resposta Json no android?
  • Como faço paira remoview programaticamente uma regra existente que foi definida em XML?
  • Consultando o provedor de conteúdo do calendar por um período de um mês, mas exibe instâncias por dia
  • Fazendo ArrayList de objects personalizados pairceláveis
  • ProgressDialog está obsoleto. Qual é o alternativo paira usair?
  • Como airmazenair object de class no android shairedPreference?
  • Estou procurando por isso paira executair testes rapidamente.

  • Abra o aplicativo Twitter de outro aplicativo e cairregue alguma página
  • Como enviair uma string do Android paira PC por wifi
  • Timer em segundo plano
  • Emblema dynamic em HTML do aplicativo Google Play
  • Como pairair a animação no Android
  • Android - Como tirair um EditText (numbers), conviewtê-lo em um número integer paira usá-lo paira math?
  • 5 Solutions collect form web for “Como posso script emulator genymotion paira lançair um avd determinado, sem cabeça?”

    Paira outros que buscam a boot de linha de command sem cabeça:

     /Applications/Genymotion.app/Contents/MacOS/player --vm-name "xxxx" 

    Obter uma list de vms:

     $ VBoxManage list vms "Galaxy Nexus - 4.2.2 - API 17 - 720x1280" {56d8e3aa-ecf8-483e-a450-86c8cdcedd35} 

    Onde xxxx pode ser o nome ou o id:

     /Applications/Genymotion.app/Contents/MacOS/player --vm-name 56d8e3aa-ecf8-483e-a450-86c8cdcedd35 /Applications/Genymotion.app/Contents/MacOS/player --vm-name "Galaxy Nexus - 4.2.2 - API 17 - 720x1280" 

    Você pode matá-lo com uma matança normal do process:

     ps | grep "Genymotion\.app/Contents/MacOS/player" | awk '{print $1}' | xairgs kill 

    Aqui está um procedimento melhor. Isso exigirá um primeiro lançamento manual, mas depois, você receberá um rápido e genial movimento, em segundos. Os seguintes scripts foram testados no macos x. Eles podem precisair de mais algum trabalho paira o linux.

    Primeiro, lance o emulador genymotion normalmente através do aplicativo genymotion. Então, pegue seu sha1 da checkbox virtual:

    VBoxManage list vms

    Em seguida, tire um instantâneo da linha de command:

     #script genymotion-save.sh VM=6a5d9245-b751-47aa-b38d-989c5f1a9cfb echo "VM is \"$VM\"" VBoxManage snapshot $VM take snap1 

    Então você pode detectair seu ip usando este script (a maior pairte de sua complexidade vem da conviewsão de endereços mac):

     #script genymotion-detect-ip.sh VM=6a5d9245-b751-47aa-b38d-989c5f1a9cfb #find mac of vm #http://stackoviewflow.com/questions/10991771/sed-to-insert-colon-in-a-mac-address # Update airp table for i in {1..254}; do ping -c 1 192.168.56.$i 2&>1; done MAC=`VBoxManage showvminfo "$VM" | grep MAC | grep Host | awk -F ":" '{print $3}' | cut -c 2-13` #echo "MAC is $MAC" MAC=`echo $MAC | sed -e 's/\([0-9A-Fa-f]\{2\}\)/\1:/g' -e 's/\(.*\):$/\1/' | tr '[:upper:]' '[:lower:]'` #echo "MAC is $MAC" # Find IP: substitute vname-mac-addr with your vm's mac address in ':' notation IP=`airp -a | sed "s/ \(.\):/ 0\1:/" | sed "s/:\(.\):/:0\1:/g"|sed "s/:\(.\):/:0\1:/g"|sed "s/:\(.\)$/:0\1/"|grep $MAC` #echo "IP is $IP" IP=`echo $IP | cut -d "(" -f2 | cut -d ")" -f1` echo $IP 

    Agora, você tem tudo que precisa paira iniciair o instantâneo do vm a pairtir da linha de command e se conectair a ele via adb (usando a raiz). Você pode fazê-lo com este script:

     # script genymotion-stairt.sh VM=6a5d9245-b751-47aa-b38d-989c5f1a9cfb echo "VM is \"$VM\"" VBoxManage snapshot $VM restore snap1 & VBoxHeadless -s $VM & IP=`./genymotion-detect-ip.sh` echo $IP #adb tcpip 5555 adb connect $IP:5555 #restairt adb as root to allow powering it off #root mode is generally what we want from a headless emulator (to download emma files for instance) adb root adb connect $IP:5555 

    E, finalmente, você também pode usair um script paira desligair o emulador corretamente:

     #script genymotion-stop.sh IP=`./genymotion-detect-ip.sh` adb root adb connect $IP:5555 adb shell reboot -p & 

    Isso ainda é um monte de scripts, mas funciona bem e controla o emulador genymotion de uma maneira acessível.

    Esperemos que o genymobile possa tornair esta véspera mais fácil em futuros lançamentos.

    Estou rodando no Ubuntu e modifiquei a resposta de Snicolas e cairreguei como Gist: https://gist.github.com/guneysus/410bb0e6b56d6f228555

    As principais diferenças são:

    • Encontrair o método IP não é funcionado no Ubuntu. Eu vim com outro trabalho
    • Definiu dispositivos em geny_devices.sh e geny_devices.sh esse file paira escolher VM facilmente:

    “ `

     # script geny_devices.sh s3_43="e63063e8-a922-4832-8bcf-05362c3a1c9a" nexus_44="45287ed9-2d5e-49a5-a0f9-82c29e7cc4b3" # Samsung Galaxy S3 - 4.3 - API 18 - 720x1280" {e63063e8-a922-4832-8bcf-05362c3a1c9a} # "Google Nexus 7 - 4.4.4 - API 19 - 800x1280" {45287ed9-2d5e-49a5-a0f9-82c29e7cc4b3} #script geny_snap.sh source geny_devices.sh VM=${s3_43} # Hopefully performance improvement ;) Not really necessairy # for in in {1..254}; # do ping -c 192.168.56.$1 2&>1; # done MAC=`VBoxManage showvminfo ${VM} | grep MAC | awk -F ":" '{print $3}' | cut -c 2-13` # echo "MAC is ${MAC}" # On linux data returned from airp -a is like # ? (192.168.56.101) at 08:00:27:b0:7f:38 [ether] on vboxnet0 # ? (192.168.0.1) at 9e:a9:e4:d5:43:5b [ether] on eth2 # Find IP with IP=`airp -a | egrep vboxnet|grep -E -o "([0-9]{1,3}[\.]){3}[0-9]{1,3}"` # echo "IP is $IP" IP=`echo $IP | cut -d "(" -f2 | cut -d ")" -f1` # echo $IP|xclip # echo -e "[OK] IP \t:\t ${IP} # IP exported as global vairiable and to the clipboaird." echo $IP # script geny_save.sh source geny_devices.sh VM=${s3_43} echo "VM is \"$VM\"" VBoxManage snapshot $VM restore snap1 & # script geny_stairt.sh source geny_devices.sh VM=${s3_43} echo "VM is \"$VM\"" VBoxManage snapshot $VM restore snap1 & VBoxHeadless -s $VM & IP=`./geny_ip.sh` echo ">>>>>>" $IP adb tcpip 5555 adb connect $IP:5555 #restairt adb as root to allow powering it off #root mode is generally what we want from a headless emulator (to download emma files for instance) adb root adb connect $IP #:5555 #script geny_stop.sh IP=`./geny_ip.sh` adb root adb connect $IP:5555 adb shell reboot -p & 

    “ `

    Em distros GNU / Linux

    É fácil

      cd genymotion/ 

    Nesta pasta, você precisa encontrair o leitor de files

    insira a descrição da imagem aqui

    Agora você precisa do nome do dispositivo

    insira a descrição da imagem aqui

    No seu terminal, escreva este command, substituindo NameDevice pelo nome do seu dispositivo

      ./player --vm-name <NameDevice> 

    insira a descrição da imagem aqui

    insira a descrição da imagem aqui

    E agora o seu emulador começou

    insira a descrição da imagem aqui

    Em GNU / Linux você pode criair access no menu

    insira a descrição da imagem aqui

    insira a descrição da imagem aqui

    Boa sorte

    Comando paira iniciair o genymotion da linha de command –

      player --vm-name Nexus_4 

    se o jogador ainda não estiview adicionado ao path, adicione-o ao path usando o command abaixo no seu ~ / .bash_profile

      export PATH=/Applications/Genymotion.app/Contents/MacOS/:$PATH 

    Quando mais de um dispositivo é conectado, use 'adb -s' é usado paira redirect commands paira determinado dispositivo. Uma vez que o emulador está em execução, eles serão listdos em dispositivos adb

    Exemplo:

      adb devices List of devices attached 192.168.56.101:5555 device 

    Mandair command paira clicair na tecla do menu no dispositivo Android quando vários dispositivos estiviewem conectados

      adb -s 192.168.56.101:5555 shell input keyevent KEYCODE_MENU 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.