Klasa monkeyrunner reprezentująca urządzenie lub emulator dostępne dla uruchomionej stacji roboczej
monkeyrunner
Ta klasa służy do sterowania urządzeniem z Androidem lub emulatorem. Metody wysyłają zdarzenia UI pobierania informacji, instalowania i usuwania aplikacji oraz uruchamiania aplikacji.
Zwykle nie trzeba tworzyć instancji MonkeyDevice
. Zamiast tego:
należy użyć funkcji
MonkeyRunner.waitForConnection()
, aby utworzyć nowy obiekt na podstawie połączenia z urządzeniem, lub
za pomocą emulatora. Na przykład zamiast
przy użyciu:
newdevice = MonkeyDevice()
użyj:
newdevice = MonkeyRunner.waitForConnection()
Podsumowanie
Stałe | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
ciąg znaków | W DÓŁ |
Tego argumentu należy używać z argumentem type funkcji
press() lub touch()
aby wysłać zdarzenie SPADEK.
|
|||||||||
ciąg znaków | W GÓRĘ |
Tego argumentu należy używać z argumentem type funkcji
press() lub touch()
aby wysłać zdarzenie UP.
|
|||||||||
ciąg znaków | W DÓŁ_I_W GÓRĘ |
Tego argumentu należy używać z argumentem type funkcji
press() lub touch()
, aby wysłać zdarzenie W DÓŁ, po którym następuje zdarzenie UP.
|
Metody | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
Przekazuje intencje do tego urządzenia, tak jakby intencje pochodziły z
aplikacji.
|
||||||||||
|
Symuluje gest przeciągania (naciśnięcie, przytrzymanie i poruszanie) na ekranie urządzenia.
|
||||||||||
|
Zwraca wartość systemowej zmiennej środowiskowej dla tego urządzenia.
Dostępne nazwy zmiennych są wymienione w sekcji
szczegółowy opis tej metody.
|
||||||||||
|
. Odpowiednik interfejsu API funkcji
adb shell getprop <key>. This is provided for use
by platform developers.
|
||||||||||
|
Instaluje na nim aplikację na Androida lub pakiet testowy zawarty w pliku packageFile
urządzenia. Jeśli aplikacja lub pakiet testowy jest już zainstalowany, zostanie zastąpiony.
|
||||||||||
|
Uruchamia określony komponent w instrukcjach Androida i zwraca wyniki.
w słowniku, którego dokładny format jest określony przez uruchamiany komponent.
na tym urządzeniu musi być już dostępny komponent.
|
||||||||||
|
Wysyła kluczowe zdarzenie określone przez typ do klucza określonego przez funkcję
(kod).
|
||||||||||
|
Uruchamia ponownie urządzenie w programie rozruchowym określonym przez parametr BoloadType.
|
||||||||||
|
Usuwa z urządzenia określony pakiet, w tym dane i pamięć podręczną.
|
||||||||||
|
Wykonuje polecenie powłoki
adb i zwraca ewentualny wynik.
|
||||||||||
|
Uruchamia aktywność na tym urządzeniu, wysyłając intencję utworzoną na podstawie
podane argumenty.
|
||||||||||
MonkeyImage
|
Przechwytuje cały bufor ekranu urządzenia, uzyskując
MonkeyImage
obiekt zawierający zrzut ekranu bieżącego wyświetlacza.
|
||||||||||
|
Wysyła zdarzenie dotknięcia określone według typu do wskazanej lokalizacji ekranu
przez x i y.
|
||||||||||
|
Wysyła znaki zawarte w wiadomości do tego urządzenia w taki sposób, jakby
została wpisana na klawiaturze urządzenia. Odpowiada to wywołaniu
press() dla każdego kodu klucza w message
za pomocą typu kluczowego zdarzenia DOWN_AND_UP .
|
||||||||||
|
Wybudza ekran tego urządzenia.
|
Stałe
ciąg znaków W DÓŁ
ciąg znaków WZROST
ciąg znaków W DÓŁ_I W GÓRĘ
Metody publiczne
nieważne . broadcastIntent ( identyfikator URI string, string action, string, string (typ MIME), Kategorie iterowalne dodatki słownik, komponent, flagi iterable) .
Przekazuje intencje do tego urządzenia, tak jakby intencje pochodziły z
aplikacji. Wejdź na Intent
, by dowiedzieć się więcej o
.
Argumenty
identyfikator URI |
Identyfikator URI intencji.
(patrz Intent.setData() ).
|
---|---|
działanie |
Działanie w przypadku tej intencji
(patrz Intent.setAction() ).
|
dane |
Identyfikator URI danych dla tej intencji
(patrz Intent.setData() ).
|
typ MIME |
Typ MIME intencji
(patrz Intent.setType() ).
|
kategorie |
iteracyjną strukturę danych zawierającą ciągi znaków definiujące kategorie;
Zamiar
(zobacz
Intent.addCategory() ).
|
dodatki |
Słownik dodatkowych danych na potrzeby tej intencji
(zobacz: Intent.putExtra()
).
Klucz każdego elementu słownika powinien być ciągiem znaków. Wartość elementu może być dowolnym prostym lub uporządkowanym typem danych. |
składnik |
Komponent danej intencji (patrz ComponentName ).
Użycie tego argumentu skieruje intencję do konkretnej klasy w obrębie określonej
pakietu na Androida.
|
flagi |
Iteracyjna struktura danych zawierająca flagi, które kontrolują sposób obsługi intencji
(patrz Intent.setFlags() ).
|
nieważne . przeciągnij ( początek krotki, koniec krotki, czas trwania zmiennoprzecinkowy, liczba całkowita) .
Symuluje gest przeciągania (naciśnięcie, przytrzymanie i poruszanie) na ekranie urządzenia.
Argumenty
rozpocznij | Punkt początkowy gestu przeciągania w postaci krotki (x,y), gdzie x i y to liczby całkowite. |
---|---|
wartość końcowa | Punkt końcowy gestu przeciągania w postaci krotki (x,y). gdzie x i y to liczby całkowite. |
czas trwania | Czas trwania gestu przeciągania w sekundach. Wartość domyślna to 1 sekunda. |
kroki | Liczba kroków do wykonania przy interpolowaniu punktów. Wartością domyślną jest 10. |
obiekt getproperty, (klucz string)
Zwraca wartość systemowej zmiennej środowiskowej dla tego urządzenia.
Argumenty
klucz | Nazwa systemowej zmiennej środowiskowej. Dostępne nazwy zmiennych są wymienione tutaj: Tabela 1. Nazwy zmiennych usługi na końcu tego tematu. |
---|
Zwroty
- Wartość zmiennej. Format danych zależy od żądanej zmiennej.
obiekt getSystemProperty (klucz string)
Synonim terminu getProperty()
.
Argumenty
klucz | Nazwa systemowej zmiennej środowiskowej. Dostępne nazwy zmiennych są wymienione tutaj: Tabela 1. Nazwy zmiennych usługi. |
---|
Zwroty
- Wartość zmiennej. Format danych zależy od żądanej zmiennej.
nieważne . installPackage (ścieżka ciągu znaków) .
Instaluje aplikację na Androida lub pakiet testowy zawarty w pliku packageFile na tym urządzeniu. Jeśli aplikacja lub pakiet testowy są już zainstalowane, zastąpiono.
Argumenty
ścieżka |
Pełna ścieżka i nazwa pliku .apk do zainstalowania.
|
---|
słownik instrument ( string className, słownik)
Uruchamia określony komponent przy użyciu instrumentacji Androida i zwraca wyniki. w słowniku, którego dokładny format jest określony przez uruchamiany komponent. na tym urządzeniu musi być już dostępny komponent.
Użyj tej metody, aby rozpocząć przypadek testowy, który korzysta z jednej z klas przypadków testowych Androida. Patrz: Testowanie podstawy, by dowiedzieć się więcej o testowaniu jednostkowym za pomocą testów na Androida. platformy.
Argumenty
nazwaklasy |
Nazwa komponentu Androida, który jest już zainstalowany na tym urządzeniu, w
standardowy format nazwa pakietu/nazwa_klasy, gdzie nazwa_pakietu to wartość
nazwę pakietu na Androida pliku .apk na tym urządzeniu oraz
classname to nazwa klasy komponentu Androida (Działanie,
ContentProvider, Service czy BroadcastReceiver). Obie opcje
Nazwa pakietu i nazwa klasy muszą być pełne. Zobacz
ComponentName , aby uzyskać więcej informacji.
|
---|---|
argumenty | Słownik zawierający flagi i ich wartości. Są one przekazywane do komponentu, gdy . Jeśli flaga nie przyjmuje wartości, ustaw pustą wartość słownika. ciągu znaków. |
Zwroty
-
Słownik zawierający dane wyjściowe komponentu. Zawartość słownika są definiowane przez komponent.
Jeśli używasz
InstrumentationTestRunner
jako nazwy zajęć w argumentu WebViewName, słownik wyników będzie zawierał pojedynczy klucz „strumień”. Wartość „stream” to ciąg znaków, który zawiera wynik testu, tak jakby usługaInstrumentationTestRunner
została uruchomiona z wiersza poleceń. Format tych danych wyjściowych jest opisany w Testy w innych IDE.
nieważne . naciśnij (nazwa ciągu znaków, integer) .
Wysyła kluczowe zdarzenie określone przez type
do klucza określonego przez funkcję
keycode
Argumenty
nazwa |
Nazwa wysyłanego kodu klucza. Listę tych kategorii znajdziesz na stronie KeyEvent
nazw kodów. Użyj nazwy kodu klucza, a nie jego wartości całkowitej.
|
---|---|
typ |
Typ kluczowego zdarzenia do wysłania. Dozwolone wartości to
DOWN , UP i
DOWN_AND_UP
|
nieważne . uruchom ponownie (ciąg rozruchowy) .
Uruchamia ponownie urządzenie w programie rozruchowym określonym przez bootloadType
.
Argumenty
do | Typ programu rozruchowego, w którym nastąpi restartowanie. Dozwolone wartości to „program rozruchowy”, „recovery” lub „Brak”. |
---|
nieważne . removePackage (pakiet ciągu znaków) .
Usuwa z urządzenia określony pakiet, w tym dane i pamięć podręczną.
Argumenty
paczka |
Nazwa pakietu na Androida pliku .apk na tym urządzeniu.
|
---|
obiekt powłoka (ciąg znaków cmd)
Wykonuje polecenie powłoki adb
i zwraca ewentualny wynik.
Argumenty
Cmd |
Polecenie do wykonania w powłoce adb . Polecenia te mają postać
opisane w temacie Android
Debug Bridge.
|
---|
Zwroty
- Wyniki polecenia (jeśli jest dostępne). Format wyników jest określany na podstawie .
nieważne . startActivity ( identyfikator URI string, string action, string, string (typ MIME), Kategorie iterowalne dodatki słownik, komponent, flagi iterable) .
Uruchamia aktywność na tym urządzeniu, wysyłając intencję utworzoną na podstawie podane argumenty.
Argumenty
identyfikator URI |
Identyfikator URI intencji.
(patrz Intent.setData() ).
|
---|---|
działanie |
Działanie związane z intencją
(patrz Intent.setAction() ).
|
dane |
Identyfikator URI danych intencji
(patrz Intent.setData() ).
|
typ MIME |
Typ MIME intencji
(patrz Intent.setType() ).
|
kategorie |
iteracyjną strukturę danych zawierającą ciągi tekstowe definiujące kategorie;
Zamiar
(zobacz
Intent.addCategory() ).
|
dodatki |
Słownik dodatkowych danych na potrzeby intencji
(zobacz
Intent.putExtra()
).
Klucz każdego elementu słownika powinien być ciągiem znaków. Wartość elementu może być dowolnym prostym lub uporządkowanym typem danych. |
składnik |
Komponent intencji
(patrz ComponentName ). Użycie tego argumentu spowoduje kierowanie
Intencja dotycząca określonej klasy w konkretnym pakiecie na Androida.
|
flagi |
Iteracyjna struktura danych zawierająca flagi, które kontrolują sposób obsługi intencji
(patrz Intent.setFlags() ).
|
MonkeyImage
Zrób zrzut ekranu
()
Przechwytuje cały bufor ekranu urządzenia, uzyskując aktualnego wyświetlacza.
Zwroty
- Za MonkeyImage zawierający obraz aktualnie wyświetlanego obrazu.
nieważne . dotyk ( liczba całkowita x, integer y, ciąg znaków) .
Wysyła zdarzenie dotknięcia określone według typu do wskazanej lokalizacji ekranu przez x i y.
Argumenty
x | Pozioma pozycja dotyku w pikselach urządzenia, zaczynająca się od lewej strony wyświetlić ekran w bieżącej orientacji. |
---|---|
Y | Pionowa pozycja dotyku w pikselach urządzenia, zaczynając od góry wyświetlić ekran w bieżącej orientacji. |
typ |
Typ kluczowego zdarzenia do wysłania. Dozwolone wartości to
DOWN , UP i
DOWN_AND_UP
|
nieważne . type (komunikat string) .
Wysyła znaki zawarte w wiadomości do tego urządzenia w taki sposób, jakby
została wpisana na klawiaturze urządzenia. Odpowiada to wywołaniu
press()
dla każdego kodu klucza w message
za pomocą typu kluczowego zdarzenia DOWN_AND_UP
.
Argumenty
wiadomość | Ciąg tekstowy zawierający znaki do wysłania. |
---|
nieważne . wybudzenie () .
Wybudza ekran tego urządzenia.
Dodatek
Grupa usług | Właściwość | Opis | Uwagi |
---|---|---|---|
build |
board |
Nazwa kodowa płyty systemowej urządzenia |
Zobacz: Build
|
brand |
Operator lub dostawca, dla którego dostosowany jest system operacyjny. | ||
device |
Nazwa projektu urządzenia. | ||
fingerprint |
Unikalny identyfikator uruchomionej aktualnie kompilacji. | ||
host |
|||
ID |
Numer lub etykieta na liście zmian. | ||
model |
Nazwa urządzenia widoczna dla użytkownika. | ||
product |
Ogólna nazwa produktu. | ||
tags |
Rozdzielone przecinkami tagi opisujące kompilację, na przykład „un signed” (bez podpisu). i „debugowanie”. | ||
type |
Typ kompilacji, na przykład „użytkownik”. lub „eng”. | ||
user |
|||
CPU_ABI |
Nazwa zestawu instrukcji kodu natywnego w formacie: typ procesora plus ABI. | ||
manufacturer |
Producent produktu lub sprzętu. | ||
version.incremental |
Kod wewnętrzny używany przez system kontroli źródła do reprezentowania tej wersji za jego pomocą. | ||
version.release |
Nazwa widoczna dla użytkownika danej wersji oprogramowania. | ||
version.sdk |
Widoczna dla użytkowników wersja pakietu SDK powiązana z tą wersją systemu operacyjnego. | ||
version.codename |
Obecny kryptonim dla programistów lub „REL”. jeśli ta wersja oprogramowania została został zwolniony. | ||
display |
width |
Szerokość wyświetlacza urządzenia w pikselach. |
Zobacz
DisplayMetrics , aby wyświetlić szczegóły.
|
height |
Wysokość wyświetlacza urządzenia w pikselach. | ||
density |
Logiczna gęstość wyświetlacza. Jest to czynnik, który skaluje się
DIP (piksele niezależne od gęstości) do rozdzielczości urządzenia. DIP jest dostosowywany tak,
że 1 DIP to 1 piksel na wyświetlaczu o przekątnej 160 pikseli na cal. Przykład:
na ekranie o rozdzielczości 160 dpi, gęstość = 1,0, a na ekranie 120 dpi – gęstość = 0,75.
Wartość nie jest dokładnie zgodna z rzeczywistym rozmiarem ekranu, ale jest dostosowywana do
do dużych zmian DPI wyświetlacza. Zobacz
|
||
am.current |
package |
Nazwa obecnie uruchomionego pakietu na Androida. |
Klucze am.current zwracają informacje o aktualnie uruchomionym kluczu
Aktywność.
|
action |
Działanie bieżącego działania. Ma taki sam format jak name
elementu action w pliku manifestu pakietu.
|
||
comp.class |
Nazwa klasy komponentu, który rozpoczął bieżące działanie. Zobacz
comp.package , aby uzyskać więcej informacji. |
||
comp.package |
Nazwa pakietu komponentu, który rozpoczął bieżące działanie. Komponent jest określana przez nazwę pakietu i nazwę klasy, którą zawiera. | ||
data |
Dane (jeśli istnieją) zawarte w intencji, która rozpoczęła bieżącą aktywność. | ||
categories |
Kategorie określone przez intencję, która rozpoczęła bieżącą aktywność. | ||
clock |
realtime |
Liczba milisekund od ponownego uruchomienia urządzenia, w tym tryb głębokiego uśpienia obecnie się znajdujesz. |
Aby dowiedzieć się więcej, przeczytaj SystemClock .
|
uptime |
Liczba milisekund od ponownego uruchomienia urządzenia, bez wliczania czas głębokiego snu | ||
millis |
czas od początku epoki systemu UNIX (w milisekundach). |