Jestem na komputerze Mac, pracuję nad opracowywaniem Androida z terminala. Pomyślnie utworzyłem projekt HelloWorld i teraz próbuję uruchomić go z wiersza polecenia w emulatorze Androida. Które polecenie uruchamia emulator mojego projektu HelloWorld?
Mam już narzędzia Android i narzędzia platformy w mojej ŚCIEŻCE.
Edytować:
Jak powiedzieć emulatorowi, aby uruchomił mój projekt HelloWorld z wiersza poleceń? Zbudowałem już projekt z mrówką.
android
command-line
android-emulator
console
console-application
Thierry Lam
źródło
źródło
avdmanager
i uruchamiaj za pomocąemulator
.Odpowiedzi:
Zakładam, że zbudowałeś projekt i po prostu musisz go uruchomić, ale nie masz żadnych utworzonych AVD i musisz używać wiersza poleceń do wszystkich akcji. Musisz wykonać następujące czynności.
android create avd -n <name> -t <targetID>
tam, gdzie targetID jest poziomem API, którego potrzebujesz. Jeśli możesz użyć GUI, po prostu wpisz,android avd
a uruchomi się menedżer, w którym możesz zrobić to samo. Możesz przeczytać więcej o zarządzaniu AVD za pomocą GUI i wiersza poleceń .emulator -avd <name>
lub za pomocą wcześniej uruchomionego GUI. Poczekaj, aż emulator w pełni się załaduje, zajmuje to trochę czasu. Możesz przeczytać o dodatkowych opcjach tutaj .install
cel. Możesz jednak zainstalować aplikację ręcznie za pomocą poleceniaadb install <path-to-your-APK>
.adb shell am start -a android.intent.action.MAIN -n <package>/<activity class>
. Na przykład:adb shell am start -a android.intent.action.MAIN -n org.sample.helloworld/org.sample.helloworld.HelloWorld
. Jak sugerował komentator, możesz również zamienićorg.sample.helloworld.HelloWorld
w powyższym wierszu na just.HelloWorld
, i to też będzie działać.źródło
adb install <path-to-your-APK>
, rozumiemerror: device not found
. Jeśli uruchomię emulator w jednej powłoce, a komendę adb install w innej, otrzymamerror: device offline
. Jak ustawić emulowane urządzenie wirtualne?adb devices
polecenia.adb kill-server; adb start-server
jeśli nic się nie pojawiadb devices
Wymień wszystkie emulatory:
Uruchom jeden z wymienionych emulatorów z
-avd
flagą:gdzie
emulator
jest pod:źródło
cd
do folderu $ ANDROID_SDK / tools, w przeciwnym razie nie będzie działać.emulator
częściej, dlaczego nie utworzyć aliasu:nano ~/.bashrc
> dodajalias emulator='$ANDROID_HOME/tools/emulator'
, zapisz. ~/bashrc
i gotowe. (zamieńANDROID_HOME
na używaną poprawną zmienną lub ścieżkę statyczną do folderu Androida).tools
przejdziesz do folderu - to naprawdę nie zadziała. Mam błądPANIC: Missing emulator engine program for 'x86' CPU.
. (Jestem na Linuksie, OpenSUSE.) Po przejściu do,tools
a następnie po prostu uruchomiłememulator -avd "{name}"
- wtedy zadziałało.Myślę, że najlepszym sposobem na osiągnięcie tego przez terminal jest:
Aby bezpośrednio uruchomić określony system AVD:
Aby wyświetlić listę AVD, użyj:
źródło
./
jako częśćemulator
polecenia do ścieżki / aliasu?~/Android/Sdk/emulator
.Wystarczy dodać tutaj, gdy pojawi się komunikat „błąd: urządzenie offline” oznacza, że połączenie z emulatorem i mostkiem adb zostało zerwane z powodu czasu potrzebnego na uruchomienie emulatora.
Zamiast ponownie uruchomić emulator w tym momencie, wypróbuj poniższe dwa polecenia, które zatrzymują się i ponownie uruchom mostek adb.
źródło
Tutaj możesz sprawdzić opcje wykonania tego polecenia za pomocą wiersza poleceń:
Na przykład używam go w następujący sposób:
źródło
otwórz CMD
źródło
Jeśli próbujesz uruchomić emulator z wiersza poleceń, wypróbuj to w OSX.
Możesz to uprościć, dodając alias do pliku .bash_profile i wysyłając go do zadania w tle.
Poinformuj Bash o zmianach.
źródło
NAMEOFDEVICE
rzeczywistą nazwą emulatora. zrób,emulator -list-avds
aby uzyskać listę avds, które masz w systemie.Otwórz wiersz polecenia i przejdź do
<android-Home>\sdk\tools>emulator -avd <AVD_NAME>
Oto
"emulator"
polecenie użyte do otwarcia urządzenia wirtualnego z Androidem .źródło
Jeśli masz Git Bash, możesz otworzyć emulator podwójnym kliknięciem, z pewną wstępną konfiguracją (testowane tylko w Windows 10) :
cd ~/AppData/Local/Android/sdk/emulator
./emulator -list-avds
i zanotuj nazwę emulatora.MY_EMULATOR
na przykład.Otwórz Notatnik i dodaj te dwa wiersze (zamiast tego wstaw nazwę emulatora
MY_EMULATOR
):cd ~/AppData/Local/Android/sdk/emulator; ./emulator -avd MY_EMULATOR
Zapisz plik w dogodnym miejscu jako mój plik. sh . Możesz zmienić „mój plik”, który najbardziej Ci odpowiada, ale konieczne jest rozszerzenie .sh .
chmod +x myfile.sh
. Pamiętaj, aby umieścić nazwę pliku zamiast mojego pliku .I to wszystko! Odtąd za każdym razem, gdy musisz uruchomić ten emulator, po prostu znajdź plik myfile.sh i kliknij go dwukrotnie i poczekaj na uruchomienie emulatora Androida!
źródło
(Linux) W twoim terminalu Kopiuj i wklej i zmieniając trzy pola na niebiesko
możesz wyświetlić emulatory w swoim katalogu domowym cd /home/Youuser/.android/avd/
źródło
android create avd
Komenda jest przestarzała. Teraz zaleca się używaćavdmanager
zamiast tego do uruchamiania emulatorów z wiersza poleceń.Najpierw utwórz nowy emulator, jeśli jeszcze nie istnieje:
Zakłada się, że masz już zainstalowany obraz systemu X86, który pasuje do API 26 i ma zainstalowane interfejsy API Google.
Następnie możesz uruchomić emulator za pomocą
emulator @MyEmulator
.źródło
Obecnie zakładając, że masz zainstalowany Android Studio (2.2) w moim przypadku i tylko 1 emulator, możesz użyć tego jednego linera
Jeśli robisz to często, ułatw to:
Dodaj alias do
~.aliases
Przypomnij sobie
source ~/.profile ~/.aliases
przed przetestowaniemTylko następnym razem
$ androidup
źródło
lista nazw avd dostępnych na
źródło
W systemie Windows używam tego skryptu PowerShell, aby go uruchomić.
źródło
źródło
Na komputerze Mac (i Linux), po utworzeniu AVD, możesz utworzyć alias:
alias run-android='~/Library/Android/sdk/tools/emulator -avd ${YOUR_AVD_NAME} &'
Uwaga : wykonanie aliasu nie zablokuje twojego terminala, jeśli chcesz, po prostu usuń ostatnie „&” .
Uruchom
emulator
go sam, da ci błąd, ponieważ spodziewa się, że w twojej obecnej pozycji musisz:/emulator/qemu/${YOUR_PATFORM}/qemu-system-x86_64'
uruchomić emulator.źródło
Napisałem ten prosty skrypt powłoki przy użyciu Zenity, który pozwala wybrać AVD, który chcesz uruchomić. Jeśli nie masz zdefiniowanego ANDROID_HOME, możesz po prostu zastąpić go pełną ścieżką do emulatora. Byłoby to również łatwe w przypadku select zamiast Zenity, ale zdecydowałem się na Zenity, ponieważ uruchamiam go z menu aplikacji xfce (chociaż plik .desktop).
źródło
Uruchom pierwszy dostępny emulator:
źródło
~/Library/Android/sdk/tools/emulator -avd $(~/Library/Android/sdk/tools/emulator -list-avds | head -1)
Uruchamianie emulatora z wiersza poleceń z pomocą dns
Lokalizacja programu emulatora: / Users / {{UserName}} / Library / Android / sdk / tools
Sprawdź istniejące avd: - emulator -list-avds
Uruchom emulator za pomocą zestawu dns / Users / {{UserName}} / Library / Android / sdk / tools / emulator -avd Pixel_API_26 -dns-server 8.8.8.8
źródło
Zobacz poniższe instrukcje dla Ubuntu Linux z zsh :
nano ~/.zshrc
aby edytować swój profilsource ~/.zshrc
lub po prostu wyloguj się i zaloguj się ponownieemulator -help
w terminaluUWAGA : Powinien być taki sam
bash
, zastępując.zshrc
go.bashrc
źródło
Jestem spóźniony, tutaj, ale chcę się podzielić, więc może to pomóc komuś i mnie, gdy będzie to później potrzebne :), Więc poniżej jest sposób na otwarcie emulatora z wiersza poleceń za pomocą jednego polecenia za pomocą skryptu bash. Używam MX Linux, ale proces jest taki sam we wszystkich systemach operacyjnych
1- Najpierw sprawdź zainstalowane emulatory
spowoduje to jak poniżej
2 - otwórz dowolny edytor zwykłego tekstu lub kodu i utwórz nowy plik i napisz jak poniżej
Nexus_4_API_28 to emulator, który chcę otworzyć, napisz swój, który dostałeś od pierwszego kroku
zapisz ten plik z rozszerzeniem .sh
3- Następnie zmień uprawnienia do pliku, aby był wykonywalny:
4- Teraz otwórz emulator po prostu wykonując ten plik skryptu bash za pomocą następującego polecenia
źródło