TestDevice
public
class
TestDevice
extends NativeDevice
Znane bezpośrednie podklasy
| ManagedRemoteDevice |
Urządzenie działające na maszynie wirtualnej, którą zarządzamy zdalnie za pomocą instancji Tradefed w maszynie wirtualnej.
|
| NestedRemoteDevice |
Reprezentacja urządzenia działającego w zdalnej maszynie wirtualnej Cuttlefish.
|
| RemoteAndroidDevice |
Implementacja ITestDevice na urządzeniu z Androidem połączonym za pomocą polecenia adb connect.
|
|
Wdrożenie ITestDevice na urządzeniu z Androidem
Podsumowanie
Metody publiczne |
String
|
adbInstallPackage(File packageFile, boolean reinstall, String... extraArgs)
Zainstaluj pakiet Androida na urządzeniu za pomocą polecenia adb.
|
String
|
adbInstallPackage(File packageFile, boolean reinstall, boolean grantPermissions, String... extraArgs)
Zainstaluj pakiet Androida na urządzeniu za pomocą polecenia adb.
|
boolean
|
canSwitchToHeadlessSystemUser()
Zwraca informację, czy można przełączyć się na użytkownika SYSTEM bez interfejsu graficznego.
|
boolean
|
clearErrorDialogs()
Próba zamknięcia wszystkich okien dialogowych z błędami, które są obecnie wyświetlane w interfejsie urządzenia.
|
int
|
createUser(String name)
Utwórz użytkownika o podanej nazwie i domyślnych flagach 0.
|
int
|
createUser(String name, boolean guest, boolean ephemeral)
Utwórz użytkownika o podanej nazwie i z podanymi flagami.
|
int
|
createUser(String name, boolean guest, boolean ephemeral, boolean forTesting)
Utwórz użytkownika o podanej nazwie i z podanymi flagami.
|
int
|
createUserNoThrow(String name)
Utwórz użytkownika o podanej nazwie i domyślnych flagach 0.
|
void
|
disableKeyguard()
próby wyłączenia blokady klawiatury,
|
boolean
|
doesFileExist(String deviceFilePath, int userId)
Metoda pomocnicza do określania, czy plik na urządzeniu istnieje dla danego użytkownika.
|
boolean
|
doesFileExist(String deviceFilePath)
Metoda pomocnicza do sprawdzania, czy plik istnieje na urządzeniu.
|
File
|
dumpHeap(String process, String devicePath)
Spróbuj zrzucić stertę z system_server.
|
Set<ITestDevice.ApexInfo>
|
getActiveApexes()
Pobiera informacje o pakietach APEX aktywowanych na urządzeniu.
|
Map<String, String>
|
getAllSettings(String namespace)
Zwraca pary klucz-wartość żądanej przestrzeni nazw.
|
String
|
getAndroidId(int userId)
Znajduje i zwraca identyfikator Androida powiązany z identyfikatorem użytkownika. Jeśli nie znajdzie identyfikatora, zwraca wartość null.
|
Map<Integer, String>
|
getAndroidIds()
Utwórz mapę identyfikatorów Androida pasujących do identyfikatorów użytkowników.
|
PackageInfo
|
getAppPackageInfo(String packageName)
Pobiera informacje o pakiecie zainstalowanym na urządzeniu.
|
List<PackageInfo>
|
getAppPackageInfos()
Pobieranie informacji o pakietach zainstalowanych na urządzeniu.
|
InputStreamSource
|
getBugreport()
Pobiera raport o błędzie z urządzenia.
|
InputStreamSource
|
getBugreportz()
Pobiera z urządzenia raport o błędzie.
|
DeviceFoldableState
|
getCurrentFoldableState()
Zwraca bieżący stan urządzenia składanego lub wartość null, jeśli wystąpiły problemy.
|
int
|
getCurrentUser()
Zwraca identyfikator aktualnie zalogowanego użytkownika.
|
Set<DeviceFoldableState>
|
getFoldableStates()
Zwraca listę stanów urządzenia składanego.
|
Set<String>
|
getInstalledPackageNames()
Pobierz nazwy pakietów aplikacji znajdujących się na urządzeniu.
|
KeyguardControllerState
|
getKeyguardState()
Zwraca obiekt, aby uzyskać bieżący stan blokady ekranu, lub wartość null, jeśli nie jest obsługiwany.
|
Integer
|
getMainUserId()
Zwraca główny identyfikator użytkownika.
|
Set<String>
|
getMainlineModuleInfo()
Pobiera informacje o modułach głównych zainstalowanych na urządzeniu.
|
int
|
getMaxNumberOfRunningUsersSupported()
Uzyskaj maksymalną liczbę obsługiwanych jednocześnie użytkowników.
|
int
|
getMaxNumberOfUsersSupported(String userType)
Pobierz maksymalną liczbę obsługiwanych użytkowników danego typu.
|
int
|
getMaxNumberOfUsersSupported()
Uzyskaj maksymalną liczbę obsługiwanych użytkowników, których można przełączać, z wyłączeniem gości.
|
Integer
|
getPrimaryUserId()
Zwraca identyfikator głównego użytkownika.
|
int
|
getRemainingCreatableUserCount(String userType)
Zwraca liczbę użytkowników danego typu, których można utworzyć na tym urządzeniu.
|
InputStreamSource
|
getScreenshot(Long displayId, String format, boolean rescale)
Wykonuje zrzut ekranu z urządzenia o podanym identyfikatorze wyświetlacza w obsługiwanym formacie.
|
InputStreamSource
|
getScreenshot(String format, boolean rescale)
Robi zrzut ekranu urządzenia.
|
InputStreamSource
|
getScreenshot(String format)
Robi zrzut ekranu urządzenia.
|
InputStreamSource
|
getScreenshot(long displayId)
Pobiera zrzut ekranu z urządzenia o podanym identyfikatorze wyświetlacza.
|
InputStreamSource
|
getScreenshot()
Robi zrzut ekranu urządzenia.
|
String
|
getSetting(int userId, String namespace, String key)
Zwraca wartość żądanego ustawienia.
|
String
|
getSetting(String namespace, String key)
Patrz getSetting(int,String,String) i wykonywane na użytkowniku systemu.
|
Set<String>
|
getUninstallablePackageNames()
Pobierz nazwy pakietów aplikacji, które można odinstalować.
|
int
|
getUserFlags(int userId)
Znajdź i zwróć flagi danego użytkownika.
|
Map<Integer, UserInfo>
|
getUserInfos()
Pobiera mapę identyfikatorów użycia do UserInfo na urządzeniu.
|
int
|
getUserSerialNumber(int userId)
Zwraca numer seryjny powiązany z identyfikatorem userId, jeśli zostanie znaleziony, lub -10000 w innych przypadkach.
|
int
|
getUserVisibleOnDisplay(int displayId)
Pobiera identyfikator użytkownika widocznego na danym wyświetlaczu.
|
boolean
|
hasFeature(String feature)
Sprawdź, czy funkcja jest dostępna na urządzeniu.
|
String
|
installPackage(File packageFile, boolean reinstall, boolean grantPermissions, String... extraArgs)
Zainstaluj pakiet Androida na urządzeniu.
|
String
|
installPackage(File packageFile, boolean reinstall, String... extraArgs)
Zainstaluj pakiet Androida na urządzeniu.
|
String
|
installPackageForUser(File packageFile, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)
Zainstaluj pakiet Androida na urządzeniu dla danego użytkownika.
|
String
|
installPackageForUser(File packageFile, boolean reinstall, int userId, String... extraArgs)
Zainstaluj pakiet Androida na urządzeniu dla danego użytkownika.
|
boolean
|
installPackageWithIncrementalMode(File[] apkFiles, String[] extraArgs, String userId)
Instaluje pliki APK w trybie przyrostowym.
|
String
|
installPackages(List<File> packageFiles, boolean reinstall, String... extraArgs)
|
String
|
installPackages(List<File> packageFiles, boolean reinstall, boolean grantPermissions, String... extraArgs)
|
String
|
installPackagesForUser(List<File> packageFiles, boolean reinstall, int userId, String... extraArgs)
|
String
|
installPackagesForUser(List<File> packageFiles, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)
|
boolean
|
isAppEnumerationSupported()
Sprawdzanie, czy platforma na urządzeniu obsługuje wyliczanie aplikacji
|
boolean
|
isHeadlessSystemUserMode()
Zwraca informację o tym, czy urządzenie korzysta z trybu użytkownika systemu bez interfejsu graficznego.
|
boolean
|
isMainUserPermanentAdmin()
Zwraca informację, czy główny użytkownik jest stałym administratorem i nie można go usunąć ani obniżyć jego uprawnień do poziomu użytkownika bez uprawnień administracyjnych.
|
boolean
|
isMultiUserSupported()
Zwraca informację, czy to urządzenie obsługuje wielu użytkowników z możliwością przełączania, którzy mają własne loginy i konfigurowalne przestrzenie.
|
boolean
|
isPackageInstalled(String packageName, String userId)
Wysyła zapytanie do urządzenia o daną nazwę pakietu i identyfikator użytkownika, aby sprawdzić, czy aplikacja jest obecnie zainstalowana dla tego użytkownika.
|
boolean
|
isPackageInstalled(String packageName)
Wysyłaj do urządzenia zapytania o daną nazwę pakietu, aby sprawdzić, czy jest on obecnie zainstalowany.
|
boolean
|
isUserRunning(int userId)
Sprawdź, czy dany użytkownik jest aktywny.
|
boolean
|
isUserSecondary(int userId)
Zwraca informację, czy określony użytkownik jest użytkownikiem dodatkowym na podstawie jego flag.
|
boolean
|
isUserVisible(int userId)
Sprawdza, czy dany użytkownik jest widoczny.
|
boolean
|
isUserVisibleOnDisplay(int userId, int displayId)
Sprawdza, czy dany użytkownik jest widoczny na danym wyświetlaczu.
|
boolean
|
isVisibleBackgroundUsersOnDefaultDisplaySupported()
Zwraca informację, czy urządzenie zezwala na uruchamianie aplikacji w tle w ERROR(/java.android.view.Display#DEFAULT_DISPLAY).
|
boolean
|
isVisibleBackgroundUsersSupported()
Zwraca informację, czy urządzenie zezwala na uruchamianie użytkowników widocznych w tle.
|
Set<Long>
|
listDisplayIds()
Zbierz listę identyfikatorów dostępnych wyświetlaczy na urządzeniu, zgodnie z raportem „dumpsys SurfaceFlinger”.
|
Set<Integer>
|
listDisplayIdsForStartingVisibleBackgroundUsers()
Pobiera listę wyświetlaczy, których można używać do start a user visible in the background.
|
ArrayList<Integer>
|
listUsers()
Pobiera listę użytkowników na urządzeniu.
|
boolean
|
logBugreport(String dataName, ITestLogger listener)
Metoda pomocnicza służąca do tworzenia raportu o błędzie i przesyłania go do osób zgłaszających.
|
void
|
notifySnapuserd(SnapuserdWaitPhase waitPhase)
|
void
|
postInvocationTearDown(Throwable exception)
Dodatkowe czynności wymagane do zwolnienia miejsca na urządzeniu, które zostaną wykonane po zakończeniu wywołania.
|
boolean
|
removeAdmin(String componentName, int userId)
Usuwa administratora danego urządzenia z konta danego użytkownika i zwraca true, jeśli operacja się uda, lub false w przeciwnym razie.
|
void
|
removeOwners()
Usuń wszystkich obecnych właścicieli profilu urządzenia, korzystając z zasady możliwie najlepszej obsługi.
|
boolean
|
removeUser(int userId)
Usuń danego użytkownika z urządzenia.
|
boolean
|
setDeviceOwner(String componentName, int userId)
Ustawianie komponentu administratora urządzenia jako właściciela urządzenia w przypadku danego użytkownika.
|
void
|
setFirstBootloaderReboot()
|
void
|
setSetting(String namespace, String key, String value)
Patrz setSetting(int,String,String,String) i wykonywane na użytkowniku systemu.
|
void
|
setSetting(int userId, String namespace, String key, String value)
Dodaj wartość ustawienia do przestrzeni nazw danego użytkownika.
|
void
|
shutdownMicrodroid(ITestDevice microdroidDevice)
Wyłącza urządzenie microdroid, jeśli takie istnieje.
|
boolean
|
startUser(int userId)
Uruchamia danego użytkownika w tle, jeśli jest on obecnie zatrzymany.
|
boolean
|
startUser(int userId, boolean waitFlag)
Uruchamia danego użytkownika w tle, jeśli jest on obecnie zatrzymany.
|
boolean
|
startVisibleBackgroundUser(int userId, int displayId, boolean waitFlag)
Uruchamia danego użytkownika w tle, widocznego na danym wyświetlaczu (czyli umożliwia użytkownikowi uruchamianie aktywności na tym wyświetlaczu).
|
boolean
|
stopUser(int userId)
Zatrzymuje danego użytkownika.
|
boolean
|
stopUser(int userId, boolean waitFlag, boolean forceFlag)
Zatrzymanie danego użytkownika.
|
boolean
|
supportsMicrodroid()
Sprawdza warunki wstępne uruchomienia mikrodroida.
|
boolean
|
supportsMicrodroid(boolean protectedVm)
Sprawdza warunki wstępne uruchomienia mikrodroida.
|
boolean
|
switchUser(int userId)
Przełącz na inny identyfikator użytkownika z domyślnym czasem oczekiwania.
|
boolean
|
switchUser(int userId, long timeout)
Przełącza się na inny identyfikator użytkownika z podanym czasem oczekiwania jako terminem.
|
Bugreport
|
takeBugreport()
Pobiera raport o błędzie i zwraca go w obiekcie Bugreport, aby go obsłużyć.
|
String
|
uninstallPackage(String packageName)
Odinstaluj pakiet Androida z urządzenia.
|
String
|
uninstallPackageForUser(String packageName, int userId)
Odinstaluj pakiet Androida z urządzenia dla danego użytkownika.
|
void
|
waitForSnapuserd(SnapuserdWaitPhase currentPhase)
|
Stałe
DISMISS_KEYGUARD_CMD
public static final String DISMISS_KEYGUARD_CMD
Polecenia, których można użyć do zamknięcia ekranu blokady.
Wartość stała:
"input keyevent 82"
Konstruktory publiczne
Metody publiczne
adbInstallPackage
public String adbInstallPackage (File packageFile,
boolean reinstall,
String... extraArgs)
Zainstaluj pakiet Androida na urządzeniu za pomocą polecenia adb.
| Parametry |
packageFile |
File: plik APK do zainstalowania |
reinstall |
boolean: true, jeśli należy ponownie zainstalować aplikację. |
extraArgs |
String: opcjonalne dodatkowe argumenty do przekazania. Dostępne opcje znajdziesz w sekcji „adb shell pm -h”. |
| Zwraca |
String |
String z kodem błędu lub null w przypadku powodzenia. |
adbInstallPackage
public String adbInstallPackage (File packageFile,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
Zainstaluj pakiet Androida na urządzeniu za pomocą polecenia adb.
Uwaga: tę funkcję należy wywoływać tylko w przypadkach użycia, które wymagają wyraźnej kontroli nad przyznawaniem uprawnień w czasie działania podczas instalacji.
| Parametry |
packageFile |
File: plik APK do zainstalowania |
reinstall |
boolean: true, jeśli należy ponownie zainstalować aplikację. |
grantPermissions |
boolean: czy wszystkie uprawnienia czasu działania mają być przyznawane w momencie instalacji. |
extraArgs |
String: opcjonalne dodatkowe argumenty do przekazania. Dostępne opcje znajdziesz w sekcji „adb shell pm -h”. |
| Zwraca |
String |
String z kodem błędu lub null w przypadku powodzenia. |
canSwitchToHeadlessSystemUser
public boolean canSwitchToHeadlessSystemUser ()
Zwraca informację, czy można przełączyć się na użytkownika SYSTEM bez interfejsu graficznego.
clearErrorDialogs
public boolean clearErrorDialogs ()
Próba zamknięcia wszystkich okien dialogowych z błędami, które są obecnie wyświetlane w interfejsie urządzenia.
| Zwraca |
boolean |
true – jeśli nie było żadnych okien lub zostały one pomyślnie zamknięte.
false w przeciwnym razie. |
createUser
public int createUser (String name)
Utwórz użytkownika o podanej nazwie i domyślnych flagach 0.
| Parametry |
name |
String: użytkownika na urządzeniu |
| Zwraca |
int |
liczba całkowita utworzonego identyfikatora użytkownika. |
createUser
public int createUser (String name,
boolean guest,
boolean ephemeral)
Utwórz użytkownika o podanej nazwie i z podanymi flagami.
| Parametry |
name |
String: użytkownika na urządzeniu |
guest |
boolean: włącz flagę użytkownika --guest podczas tworzenia. |
ephemeral |
boolean: włącz flagę użytkownika --ephemeral podczas tworzenia |
| Zwraca |
int |
identyfikator utworzonego użytkownika; |
createUser
public int createUser (String name,
boolean guest,
boolean ephemeral,
boolean forTesting)
Utwórz użytkownika o podanej nazwie i z podanymi flagami.
| Parametry |
name |
String: użytkownika na urządzeniu |
guest |
boolean: włącz flagę użytkownika --guest podczas tworzenia. |
ephemeral |
boolean: włącz flagę użytkownika --ephemeral podczas tworzenia |
forTesting |
boolean: włącz flagę testową --for-testing podczas tworzenia |
| Zwraca |
int |
identyfikator utworzonego użytkownika; |
createUserNoThrow
public int createUserNoThrow (String name)
Utwórz użytkownika o podanej nazwie i domyślnych flagach 0.
| Parametry |
name |
String: użytkownika na urządzeniu |
| Zwraca |
int |
liczba całkowita identyfikatora utworzonego użytkownika lub -1 w przypadku błędu. |
disableKeyguard
public void disableKeyguard ()
próby wyłączenia blokady klawiatury,
Najpierw poczekaj, aż wysyłanie danych wejściowych będzie gotowe. Dzieje się to mniej więcej w tym samym czasie, gdy urządzenie zgłasza BOOT_COMPLETE, najwyraźniej asynchronicznie, ponieważ bieżąca implementacja platformy czasami powoduje sytuację wyścigu. Następnie wysyłane jest polecenie zamknięcia ekranu blokady (działa tylko w przypadku niezabezpieczonych ekranów blokady).
doesFileExist
public boolean doesFileExist (String deviceFilePath,
int userId)
Metoda pomocnicza do określania, czy plik na urządzeniu istnieje dla danego użytkownika.
| Parametry |
deviceFilePath |
String: ścieżka bezwzględna do pliku na urządzeniu, który ma zostać sprawdzony |
userId |
int: identyfikator użytkownika, względem którego należy sprawdzić istnienie pliku. |
| Zwraca |
boolean |
true, jeśli plik istnieje, false w przeciwnym razie. |
doesFileExist
public boolean doesFileExist (String deviceFilePath)
Metoda pomocnicza do sprawdzania, czy plik istnieje na urządzeniu.
| Parametry |
deviceFilePath |
String: ścieżka bezwzględna do pliku na urządzeniu, który ma zostać sprawdzony |
| Zwraca |
boolean |
true, jeśli plik istnieje, false w przeciwnym razie. |
dumpHeap
public File dumpHeap (String process,
String devicePath)
Spróbuj zrzucić stertę z system_server. Za usunięcie zrzutu pliku odpowiada osoba wywołująca.
| Parametry |
process |
String: nazwa procesu na urządzeniu, dla którego chcesz utworzyć zrzut pamięci. |
devicePath |
String: ścieżka na urządzeniu, w której ma się znaleźć zrzut. Musi to być lokalizacja, w której zezwalają na to uprawnienia. |
| Zwraca |
File |
File zawierający raport. Wartość null, jeśli coś się nie powiodło. |
getActiveApexes
public Set<ITestDevice.ApexInfo> getActiveApexes ()
Pobiera informacje o pakietach APEX aktywowanych na urządzeniu.
getAllSettings
public Map<String, String> getAllSettings (String namespace)
Zwraca pary klucz-wartość żądanej przestrzeni nazw.
| Parametry |
namespace |
String: musi mieć jedną z wartości: {"system", "secure", "global"} |
| Zwraca |
Map<String, String> |
mapa par klucz-wartość. Wartość null, jeśli przestrzeń nazw nie jest obsługiwana. |
getAndroidId
public String getAndroidId (int userId)
Znajduje i zwraca identyfikator Androida powiązany z identyfikatorem użytkownika. Jeśli nie znajdzie identyfikatora, zwraca wartość null.
getAndroidIds
public Map<Integer, String> getAndroidIds ()
Utwórz mapę identyfikatorów Androida pasujących do identyfikatorów użytkowników. Nie ma gwarancji, że każdy identyfikator użytkownika znajdzie powiązany identyfikator Androida w tej funkcji, więc niektóre identyfikatory użytkowników mogą pasować do wartości null.
| Zwraca |
Map<Integer, String> |
Mapa identyfikatorów Androida pasujących do identyfikatorów użytkowników. |
getAppPackageInfo
public PackageInfo getAppPackageInfo (String packageName)
Pobiera informacje o pakiecie zainstalowanym na urządzeniu.
| Parametry |
packageName |
String |
getAppPackageInfos
public List<PackageInfo> getAppPackageInfos ()
Pobieranie informacji o pakietach zainstalowanych na urządzeniu.
getBugreport
public InputStreamSource getBugreport ()
Pobiera raport o błędzie z urządzenia.
Gwarantujemy, że ta implementacja będzie nadal działać na urządzeniu bez karty SD (lub gdy karta SD nie jest jeszcze zamontowana).
getBugreportz
public InputStreamSource getBugreportz ()
Pobiera z urządzenia raport o błędzie. Raport o błędzie w formacie ZIP zawiera główny raport o błędzie i inne pliki dziennika przydatne do debugowania.
Obsługiwane tylko w przypadku wersji „adb version” > 1.0.36
getCurrentFoldableState
public DeviceFoldableState getCurrentFoldableState ()
Zwraca bieżący stan urządzenia składanego lub wartość null, jeśli wystąpiły problemy.
getCurrentUser
public int getCurrentUser ()
Zwraca identyfikator aktualnie zalogowanego użytkownika. W przypadku błędu zwróć wartość -10000.
getFoldableStates
public Set<DeviceFoldableState> getFoldableStates ()
Zwraca listę stanów urządzenia składanego. Można je uzyskać za pomocą polecenia „cmd device_state
print-states”.
getInstalledPackageNames
public Set<String> getInstalledPackageNames ()
Pobierz nazwy pakietów aplikacji znajdujących się na urządzeniu.
| Zwraca |
Set<String> |
Set z String nazw pakietów zainstalowanych obecnie na urządzeniu. |
getKeyguardState
public KeyguardControllerState getKeyguardState ()
Zwraca obiekt, aby uzyskać bieżący stan blokady ekranu, lub wartość null, jeśli nie jest obsługiwany.
getMainUserId
public Integer getMainUserId ()
Zwraca główny identyfikator użytkownika.
| Zwraca |
Integer |
identyfikator użytkownika głównego, jeśli taki istnieje, lub wartość null, jeśli nie ma użytkownika głównego. |
getMainlineModuleInfo
public Set<String> getMainlineModuleInfo ()
Pobiera informacje o modułach głównych zainstalowanych na urządzeniu.
| Zwraca |
Set<String> |
Set z String modułów głównych zainstalowanych obecnie na urządzeniu. |
public int getMaxNumberOfRunningUsersSupported ()
Uzyskaj maksymalną liczbę obsługiwanych jednocześnie użytkowników. Domyślna wartość to 0.
| Zwraca |
int |
liczba całkowita wskazująca liczbę jednocześnie działających użytkowników; |
public int getMaxNumberOfUsersSupported (String userType)
Pobierz maksymalną liczbę obsługiwanych użytkowników danego typu. Domyślna wartość to 0.
| Parametry |
userType |
String: typ użytkownika zdefiniowany w klasie UserManager, np. „android.os.usertype.full.SECONDARY”. |
| Zwraca |
int |
liczbę całkowitą wskazującą liczbę obsługiwanych użytkowników danego typu, |
public int getMaxNumberOfUsersSupported ()
Uzyskaj maksymalną liczbę obsługiwanych użytkowników, których można przełączać, z wyłączeniem gości. Po wersji interfejsu API 36 nie obejmuje użytkowników, których nie można przełączyć (np. profili). Domyślna wartość to 0.
| Zwraca |
int |
liczba całkowita wskazująca liczbę obsługiwanych użytkowników, między którymi można się przełączać. |
getPrimaryUserId
public Integer getPrimaryUserId ()
Zwraca identyfikator głównego użytkownika.
| Zwraca |
Integer |
identyfikator użytkownika głównego, jeśli taki istnieje, lub wartość null, jeśli nie ma użytkownika głównego. |
getRemainingCreatableUserCount
public int getRemainingCreatableUserCount (String userType)
Zwraca liczbę użytkowników danego typu, których można utworzyć na tym urządzeniu.
| Parametry |
userType |
String: typ użytkownika zdefiniowany w klasie UserManager, np. „android.os.usertype.full.SECONDARY”. |
| Zwraca |
int |
ile użytkowników danego typu można dodać, |
getScreenshot
public InputStreamSource getScreenshot (Long displayId,
String format,
boolean rescale)
Wykonuje zrzut ekranu z urządzenia o podanym identyfikatorze wyświetlacza w obsługiwanym formacie. Zezwalanie na zmianę rozmiaru w celu obsługi mniejszych rozmiarów
| Parametry |
displayId |
Long: identyfikator wyświetlacza, z którego ma zostać zrobiony zrzut ekranu. |
format |
String: obsługiwane formaty PNG i JPEG |
rescale |
boolean: czy zrzut ekranu ma zostać przeskalowany, aby zmniejszyć rozmiar wynikowego obrazu. |
getScreenshot
public InputStreamSource getScreenshot (String format,
boolean rescale)
Robi zrzut ekranu urządzenia. Zalecamy używanie getScreenshot(String) zamiast tego formatu, ponieważ w przypadku kodowania JPEG rozmiar jest mniejszy.
| Parametry |
format |
String: obsługiwane formaty PNG i JPEG |
rescale |
boolean: czy zrzut ekranu ma zostać przeskalowany, aby zmniejszyć rozmiar wynikowego obrazu. |
getScreenshot
public InputStreamSource getScreenshot (String format)
Robi zrzut ekranu urządzenia.
Zamiast tego zalecamy użycie metody getScreenshot(format) z kodowaniem JPEG, aby uzyskać mniejszy rozmiar.
| Parametry |
format |
String: obsługiwane formaty PNG i JPEG |
getScreenshot
public InputStreamSource getScreenshot (long displayId)
Pobiera zrzut ekranu z urządzenia o podanym identyfikatorze wyświetlacza. Format to PNG.
DO ZROBIENIA: rozszerzyć powyższe implementacje, aby obsługiwały „format” i „rescale”
| Parametry |
displayId |
long: identyfikator wyświetlacza, z którego ma zostać zrobiony zrzut ekranu. |
getScreenshot
public InputStreamSource getScreenshot ()
Robi zrzut ekranu urządzenia.
getSetting
public String getSetting (int userId,
String namespace,
String key)
Zwraca wartość żądanego ustawienia.
przestrzeń nazw musi być jedną z tych wartości: {"system", "secure", "global"}
| Parametry |
userId |
int |
namespace |
String |
key |
String |
| Zwraca |
String |
wartość powiązana z przestrzenią nazw:klucz użytkownika. Wartość null, jeśli nie znaleziono. |
getSetting
public String getSetting (String namespace,
String key)
Patrz getSetting(int,String,String) i wykonywane na użytkowniku systemu.
| Parametry |
namespace |
String |
key |
String |
getUninstallablePackageNames
public Set<String> getUninstallablePackageNames ()
Pobierz nazwy pakietów aplikacji, które można odinstalować. Obecnie są to pakiety inne niż systemowe i zaktualizowane pakiety systemowe.
| Zwraca |
Set<String> |
Set nazw pakietów, których nie można odinstalować, zainstalowanych obecnie na urządzeniu.String |
getUserFlags
public int getUserFlags (int userId)
Znajdź i zwróć flagi danego użytkownika.
Flagi są zdefiniowane w klasie „android.content.pm.UserInfo” w projekcie Android Open Source.
| Zwraca |
int |
flagi powiązane z podanym identyfikatorem użytkownika, jeśli zostaną znalezione, lub -10000 w innych przypadkach. |
getUserInfos
public Map<Integer, UserInfo> getUserInfos ()
Pobiera mapę identyfikatorów użycia do UserInfo na urządzeniu. Wyrzuci błąd DeviceRuntimeException, jeśli dane wyjściowe z urządzenia nie będą zgodne z oczekiwaniami.
| Zwraca |
Map<Integer, UserInfo> |
lista obiektów UserInfo. |
getUserSerialNumber
public int getUserSerialNumber (int userId)
Zwraca numer seryjny powiązany z identyfikatorem userId, jeśli zostanie znaleziony, lub -10000 w innych przypadkach.
getUserVisibleOnDisplay
public int getUserVisibleOnDisplay (int displayId)
Pobiera identyfikator użytkownika widocznego na danym wyświetlaczu.
| Parametry |
displayId |
int: identyfikator wyświetlacza. |
| Zwraca |
int |
identyfikator użytkownika widocznego na danym wyświetlaczu. Nie rozróżnia użytkownika w tle, który jest widoczny, od użytkownika na pierwszym planie, ponieważ oba typy są widoczne. Aby odróżnić te przypadki, porównaj je z wynikiem funkcji getCurrentUser(). |
hasFeature
public boolean hasFeature (String feature)
Sprawdź, czy funkcja jest dostępna na urządzeniu.
| Parametry |
feature |
String: format powinien mieć postać „feature:” lub bezpośrednio „”. |
| Zwraca |
boolean |
Wartość true, jeśli funkcja została znaleziona. W przeciwnym razie wartość false. |
installPackage
public String installPackage (File packageFile,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
Zainstaluj pakiet Androida na urządzeniu.
Uwaga: tę funkcję należy wywoływać tylko w przypadkach użycia, które wymagają wyraźnej kontroli nad przyznawaniem uprawnień w czasie działania podczas instalacji.
| Parametry |
packageFile |
File: plik APK do zainstalowania |
reinstall |
boolean: true, jeśli należy ponownie zainstalować aplikację. |
grantPermissions |
boolean: czy wszystkie uprawnienia czasu działania mają być przyznawane w momencie instalacji. |
extraArgs |
String: opcjonalne dodatkowe argumenty do przekazania. Dostępne opcje znajdziesz w sekcji „adb shell pm -h”. |
| Zwraca |
String |
String z kodem błędu lub null w przypadku powodzenia. |
installPackage
public String installPackage (File packageFile,
boolean reinstall,
String... extraArgs)
Zainstaluj pakiet Androida na urządzeniu.
| Parametry |
packageFile |
File: plik APK do zainstalowania |
reinstall |
boolean: true, jeśli należy ponownie zainstalować aplikację. |
extraArgs |
String: opcjonalne dodatkowe argumenty do przekazania. Dostępne opcje znajdziesz w sekcji „adb shell pm -h”. |
| Zwraca |
String |
String z kodem błędu lub null w przypadku powodzenia. |
installPackageForUser
public String installPackageForUser (File packageFile,
boolean reinstall,
boolean grantPermissions,
int userId,
String... extraArgs)
Zainstaluj pakiet Androida na urządzeniu dla danego użytkownika.
Uwaga: tę funkcję należy wywoływać tylko w przypadkach użycia, które wymagają wyraźnej kontroli nad przyznawaniem uprawnień w czasie działania podczas instalacji.
| Parametry |
packageFile |
File: plik APK do zainstalowania |
reinstall |
boolean: true, jeśli należy ponownie zainstalować aplikację. |
grantPermissions |
boolean: czy wszystkie uprawnienia czasu działania mają być przyznawane w momencie instalacji. |
userId |
int: identyfikator użytkownika (liczba całkowita), dla którego ma zostać zainstalowana aplikacja. |
extraArgs |
String: opcjonalne dodatkowe argumenty do przekazania. Dostępne opcje znajdziesz w sekcji „adb shell pm -h”. |
| Zwraca |
String |
String z kodem błędu lub null w przypadku powodzenia. |
installPackageForUser
public String installPackageForUser (File packageFile,
boolean reinstall,
int userId,
String... extraArgs)
Zainstaluj pakiet Androida na urządzeniu dla danego użytkownika.
| Parametry |
packageFile |
File: plik APK do zainstalowania |
reinstall |
boolean: true, jeśli należy ponownie zainstalować aplikację. |
userId |
int: identyfikator użytkownika (liczba całkowita), dla którego ma zostać zainstalowana aplikacja. |
extraArgs |
String: opcjonalne dodatkowe argumenty do przekazania. Dostępne opcje znajdziesz w sekcji „adb shell pm -h”. |
| Zwraca |
String |
String z kodem błędu lub null w przypadku powodzenia. |
installPackageWithIncrementalMode
public boolean installPackageWithIncrementalMode (File[] apkFiles,
String[] extraArgs,
String userId)
Instaluje pliki APK w trybie przyrostowym.
| Parametry |
apkFiles |
File: pliki APK do zainstalowania. |
extraArgs |
String |
userId |
String |
installPackages
public String installPackages (List<File> packageFiles,
boolean reinstall,
String... extraArgs)
| Parametry |
packageFiles |
List |
reinstall |
boolean |
extraArgs |
String |
installPackages
public String installPackages (List<File> packageFiles,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
| Parametry |
packageFiles |
List |
reinstall |
boolean |
grantPermissions |
boolean |
extraArgs |
String |
installPackagesForUser
public String installPackagesForUser (List<File> packageFiles,
boolean reinstall,
int userId,
String... extraArgs)
| Parametry |
packageFiles |
List |
reinstall |
boolean |
userId |
int |
extraArgs |
String |
installPackagesForUser
public String installPackagesForUser (List<File> packageFiles,
boolean reinstall,
boolean grantPermissions,
int userId,
String... extraArgs)
| Parametry |
packageFiles |
List |
reinstall |
boolean |
grantPermissions |
boolean |
userId |
int |
extraArgs |
String |
isAppEnumerationSupported
public boolean isAppEnumerationSupported ()
Sprawdzanie, czy platforma na urządzeniu obsługuje wyliczanie aplikacji
| Zwraca |
boolean |
Wartość „prawda”, jeśli wyliczanie aplikacji jest obsługiwane, w przeciwnym razie „fałsz”. |
isHeadlessSystemUserMode
public boolean isHeadlessSystemUserMode ()
Zwraca informację o tym, czy urządzenie korzysta z trybu użytkownika systemu bez interfejsu graficznego.
isMainUserPermanentAdmin
public boolean isMainUserPermanentAdmin ()
Zwraca informację, czy główny użytkownik jest stałym administratorem i nie można go usunąć ani obniżyć jego uprawnień do poziomu użytkownika bez uprawnień administracyjnych.
isMultiUserSupported
public boolean isMultiUserSupported ()
Zwraca informację, czy to urządzenie obsługuje wielu użytkowników z możliwością przełączania, którzy mają własne loginy i konfigurowalne przestrzenie.
Pamiętaj, że nawet jeśli ta wartość jest fałszywa, może być możliwe zalogowanie wielu użytkowników, o ile nie jest wymagany interfejs logowania. Na przykład profile mogą być nadal obsługiwane, ponieważ nie wymagają interfejsu logowania.
Sprawdza ona też config_enableMultiUserUI. Na żądanie możemy założyć, że urządzenia, w przypadku których ta zasada ma wartość Prawda, są skonfigurowane tak, aby zezwalać na dodawanie użytkowników dodatkowych za pomocą narzędzia ADB.
| Zwraca |
boolean |
czy urządzenie obsługuje wielu użytkowników, między którymi można się przełączać. |
isPackageInstalled
public boolean isPackageInstalled (String packageName,
String userId)
Wysyła zapytanie do urządzenia o daną nazwę pakietu i identyfikator użytkownika, aby sprawdzić, czy aplikacja jest obecnie zainstalowana dla tego użytkownika.
| Parametry |
packageName |
String: pakiet, który sprawdzamy pod kątem instalacji. |
userId |
String: identyfikator użytkownika, dla którego sprawdzamy, czy pakiet jest zainstalowany. Jeśli wartość to null, używany będzie główny użytkownik zero. |
| Zwraca |
boolean |
Wartość true, jeśli pakiet jest zgłaszany jako zainstalowany. W przeciwnym razie ma wartość Fałsz. |
isPackageInstalled
public boolean isPackageInstalled (String packageName)
Wysyłaj do urządzenia zapytania o daną nazwę pakietu, aby sprawdzić, czy jest on obecnie zainstalowany.
| Parametry |
packageName |
String |
| Zwraca |
boolean |
Wartość true, jeśli pakiet jest zgłaszany jako zainstalowany. W przeciwnym razie ma wartość Fałsz. |
isUserRunning
public boolean isUserRunning (int userId)
Sprawdź, czy dany użytkownik jest aktywny.
| Zwraca |
boolean |
Wartość „prawda”, jeśli użytkownik biegnie. W innych przypadkach wartość „fałsz”. |
isUserSecondary
public boolean isUserSecondary (int userId)
Zwraca informację, czy określony użytkownik jest użytkownikiem dodatkowym na podstawie jego flag.
| Zwraca |
boolean |
Wartość „true”, jeśli użytkownik jest dodatkowy, w przeciwnym razie „false”. |
isUserVisible
public boolean isUserVisible (int userId)
Sprawdza, czy dany użytkownik jest widoczny.
„Widoczny” użytkownik to użytkownik, który wchodzi w interakcję z „prawdziwym” użytkownikiem i dlatego może uruchamiać działania (zwykle na domyślnym ekranie).
isUserVisibleOnDisplay
public boolean isUserVisibleOnDisplay (int userId,
int displayId)
Sprawdza, czy dany użytkownik jest widoczny na danym wyświetlaczu.
„Widoczny” użytkownik to użytkownik, który wchodzi w interakcję z „prawdziwym” użytkownikiem i dlatego może uruchamiać działania na tym wyświetlaczu.
| Parametry |
userId |
int |
displayId |
int |
listDisplayIds
public Set<Long> listDisplayIds ()
Zbierz listę identyfikatorów dostępnych wyświetlaczy na urządzeniu, zgodnie z raportem „dumpsys SurfaceFlinger”.
| Zwraca |
Set<Long> |
Lista wyświetlaczy. Funkcja Default zawsze zwraca domyślny wyświetlacz 0. |
listDisplayIdsForStartingVisibleBackgroundUsers
public Set<Integer> listDisplayIdsForStartingVisibleBackgroundUsers ()
Pobiera listę wyświetlaczy, których można używać do start a user visible in the background.
listUsers
public ArrayList<Integer> listUsers ()
Pobiera listę użytkowników na urządzeniu. Wyrzuci wyjątek DeviceRuntimeException, jeśli dane wyjściowe z urządzenia nie będą zgodne z oczekiwaniami.
| Zwraca |
ArrayList<Integer> |
lista identyfikatorów użytkowników. |
logBugreport
public boolean logBugreport (String dataName,
ITestLogger listener)
Metoda pomocnicza służąca do tworzenia raportu o błędzie i przesyłania go do osób zgłaszających.
| Parametry |
dataName |
String: nazwa, pod którą zostanie zgłoszony raport o błędzie. |
listener |
ITestLogger: ITestLogger do zarejestrowania raportu o błędzie. |
| Zwraca |
boolean |
Wartość true, jeśli rejestrowanie się powiodło. W przeciwnym razie wartość false. |
notifySnapuserd
public void notifySnapuserd (SnapuserdWaitPhase waitPhase)
| Parametry |
waitPhase |
SnapuserdWaitPhase |
postInvocationTearDown
public void postInvocationTearDown (Throwable exception)
Dodatkowe czynności wymagane do zwolnienia miejsca na urządzeniu, które zostaną wykonane po zakończeniu wywołania.
| Parametry |
exception |
Throwable: jeśli wystąpił błąd wywołania, jest to ostateczny wyjątek. |
removeAdmin
public boolean removeAdmin (String componentName,
int userId)
Usuwa administratora danego urządzenia z konta danego użytkownika i zwraca true, jeśli operacja się uda, lub false w przeciwnym razie.
| Parametry |
componentName |
String: administratora urządzenia do usunięcia. |
userId |
int: użytkownika, w którego profilu znajduje się administrator urządzenia. |
| Zwraca |
boolean |
Wartość „prawda”, jeśli operacja się powiodła. W przeciwnym razie „fałsz”. |
removeOwners
public void removeOwners ()
Usuń wszystkich obecnych właścicieli profilu urządzenia, korzystając z zasady możliwie najlepszej obsługi.
removeUser
public boolean removeUser (int userId)
Usuń danego użytkownika z urządzenia.
| Parametry |
userId |
int: użytkownika, który ma zostać usunięty |
| Zwraca |
boolean |
Wartość „true”, jeśli użytkownik został usunięty. W przeciwnym razie „false”. |
setDeviceOwner
public boolean setDeviceOwner (String componentName,
int userId)
Ustawianie komponentu administratora urządzenia jako właściciela urządzenia w przypadku danego użytkownika.
| Parametry |
componentName |
String: administratora urządzenia na właściciela urządzenia. |
userId |
int: użytkownika, w którego kraju mieszka właściciel urządzenia. |
| Zwraca |
boolean |
Wartość „prawda”, jeśli operacja się powiodła. W przeciwnym razie „fałsz”. |
setFirstBootloaderReboot
public void setFirstBootloaderReboot ()
setSetting
public void setSetting (String namespace,
String key,
String value)
Patrz setSetting(int,String,String,String) i wykonywane na użytkowniku systemu.
| Parametry |
namespace |
String |
key |
String |
value |
String |
setSetting
public void setSetting (int userId,
String namespace,
String key,
String value)
Dodaj wartość ustawienia do przestrzeni nazw danego użytkownika. Niektóre ustawienia będą dostępne dopiero po ponownym uruchomieniu.
przestrzeń nazw musi być jedną z tych wartości: {"system", "secure", "global"}
| Parametry |
userId |
int |
namespace |
String |
key |
String |
value |
String |
shutdownMicrodroid
public void shutdownMicrodroid (ITestDevice microdroidDevice)
Wyłącza urządzenie microdroid, jeśli takie istnieje.
| Parametry |
microdroidDevice |
ITestDevice |
startUser
public boolean startUser (int userId)
Uruchamia danego użytkownika w tle, jeśli jest on obecnie zatrzymany. Jeśli użytkownik już działa w tle, ta metoda nie wykonuje żadnej operacji.
| Parametry |
userId |
int: użytkownika, aby rozpocząć w tle. |
| Zwraca |
boolean |
Wartość true, jeśli użytkownik został uruchomiony w tle. |
startUser
public boolean startUser (int userId,
boolean waitFlag)
Uruchamia danego użytkownika w tle, jeśli jest on obecnie zatrzymany. Jeśli użytkownik już działa w tle, ta metoda nie wykonuje żadnej operacji. Możesz podać dodatkową flagę, aby poczekać na
wprowadzenie zmian.
| Parametry |
userId |
int: użytkownika, aby rozpocząć w tle. |
waitFlag |
boolean: spowoduje, że polecenie będzie czekać, aż użytkownik zostanie uruchomiony i odblokowany. |
| Zwraca |
boolean |
Wartość true, jeśli użytkownik został uruchomiony w tle. |
startVisibleBackgroundUser
public boolean startVisibleBackgroundUser (int userId,
int displayId,
boolean waitFlag)
Uruchamia danego użytkownika w tle, widocznego na danym wyświetlaczu (czyli umożliwia użytkownikowi uruchamianie aktywności na tym wyświetlaczu).
UWAGA: to polecenie nie sprawdza, czy użytkownik istnieje, czy wyświetlacz jest dostępny, device supports such feature itp.
| Parametry |
userId |
int: użytkownika, aby rozpocząć w tle. |
displayId |
int: wyświetlanie, aby rozpocząć widoczność użytkownika |
waitFlag |
boolean: spowoduje, że polecenie będzie czekać, aż użytkownik zostanie uruchomiony i odblokowany. |
| Zwraca |
boolean |
true – jeśli użytkownik został uruchomiony w tle. |
stopUser
public boolean stopUser (int userId)
Zatrzymuje danego użytkownika. Jeśli użytkownik jest już zatrzymany, ta metoda nie wykonuje żadnej operacji.
Nie można zatrzymać bieżącego użytkownika ani użytkownika systemu.
| Parametry |
userId |
int: użytkownika, którego chcesz zatrzymać. |
| Zwraca |
boolean |
Wartość true, jeśli użytkownik został zatrzymany. |
stopUser
public boolean stopUser (int userId,
boolean waitFlag,
boolean forceFlag)
Zatrzymanie danego użytkownika. Można podać dodatkowe flagi, aby poczekać na wprowadzenie zmian, i wymusić zakończenie sesji użytkownika. Nie można zatrzymać bieżącego użytkownika ani użytkownika systemu.
| Parametry |
userId |
int: użytkownika, którego chcesz zatrzymać. |
waitFlag |
boolean: spowoduje, że polecenie będzie czekać, aż użytkownik się zatrzyma. |
forceFlag |
boolean: wymusi zatrzymanie użytkownika. |
| Zwraca |
boolean |
Wartość true, jeśli użytkownik został zatrzymany. |
supportsMicrodroid
public boolean supportsMicrodroid ()
Sprawdza warunki wstępne uruchomienia mikrodroida.
| Zwraca |
boolean |
zwraca wartość „true”, jeśli warunki wstępne są spełnione, w przeciwnym razie zwraca wartość „false”. |
supportsMicrodroid
public boolean supportsMicrodroid (boolean protectedVm)
Sprawdza warunki wstępne uruchomienia mikrodroida.
| Parametry |
protectedVm |
boolean: wartość true, jeśli mikrodroid ma działać na chronionej maszynie wirtualnej. |
| Zwraca |
boolean |
zwraca wartość „true”, jeśli warunki wstępne są spełnione, w przeciwnym razie zwraca wartość „false”. |
switchUser
public boolean switchUser (int userId)
Przełącz na inny identyfikator użytkownika z domyślnym czasem oczekiwania. switchUser(int, long).
| Zwraca |
boolean |
Wartość „true”, jeśli nowy identyfikator użytkownika pasuje do dostawcy identyfikatora użytkownika. W przeciwnym razie ma wartość Fałsz. |
switchUser
public boolean switchUser (int userId,
long timeout)
Przełącza się na inny identyfikator użytkownika z podanym czasem oczekiwania jako terminem.
Próba wyłączenia blokady ekranu po zmianie użytkownika zakończyła się powodzeniem.
| Parametry |
userId |
int |
timeout |
long: czas oczekiwania przed zwróceniem wartości false w przypadku niepowodzenia przełączania użytkownika. |
| Zwraca |
boolean |
Wartość „true”, jeśli nowy identyfikator użytkownika pasuje do dostawcy identyfikatora użytkownika. W przeciwnym razie ma wartość Fałsz. |
takeBugreport
public Bugreport takeBugreport ()
Pobiera raport o błędzie i zwraca go w obiekcie Bugreport, aby go obsłużyć. W przypadku problemu zwraca wartość null. Plik, do którego odwołuje się obiekt Bugreport, musi zostać wyczyszczony za pomocą funkcji Bugreport.close().
uninstallPackage
public String uninstallPackage (String packageName)
Odinstaluj pakiet Androida z urządzenia.
| Parametry |
packageName |
String: pakiet na Androida do odinstalowania. |
| Zwraca |
String |
String z kodem błędu lub null w przypadku powodzenia. |
uninstallPackageForUser
public String uninstallPackageForUser (String packageName,
int userId)
Odinstaluj pakiet Androida z urządzenia dla danego użytkownika.
| Parametry |
packageName |
String: pakiet na Androida do odinstalowania. |
userId |
int: identyfikator użytkownika (liczba całkowita), dla którego ma zostać odinstalowana aplikacja. |
| Zwraca |
String |
String z kodem błędu lub null w przypadku powodzenia. |
waitForSnapuserd
public void waitForSnapuserd (SnapuserdWaitPhase currentPhase)
| Parametry |
currentPhase |
SnapuserdWaitPhase |
Metody chronione
createParser
protected AaptParser createParser (File appFile)
doAdbReboot
protected void doAdbReboot (NativeDevice.RebootMode rebootMode,
String reason)
Wykonaj ponowne uruchomienie za pomocą polecenia adb.
| Parametry |
rebootMode |
NativeDevice.RebootMode: tryb ponownego uruchomienia. |
reason |
String: w przypadku tego ponownego uruchomienia. |
getBugreportzInternal
protected File getBugreportzInternal ()
Wewnętrzna metoda pomocnicza do pobierania pliku ZIP bugreportz jako File.
getCheckNewUserSleep
protected long getCheckNewUserSleep ()
Udostępniono do testowania.
getHostCurrentTime
protected long getHostCurrentTime ()
Udostępniono do testowania
prePostBootSetup
protected void prePostBootSetup ()
Umożliwia każdemu typowi urządzenia (AndroidNativeDevice, TestDevice) zastąpienie tej metody w celu przeprowadzenia konfiguracji po uruchomieniu.