TestDevice
public
class
TestDevice
extends NativeDevice
전체 스택 Android 기기용 ITestDevice
구현
요약
공개 메서드 |
boolean
|
canSwitchToHeadlessSystemUser()
헤드리스 시스템 사용자로 전환할 수 있는지 여부를 반환합니다.
|
boolean
|
clearErrorDialogs()
현재 기기 UI에 표시된 오류 대화상자를 닫으려고 시도합니다.
|
int
|
createUser(String name)
지정된 이름과 기본 플래그 0으로 사용자를 만듭니다.
|
int
|
createUser(String name, boolean guest, boolean ephemeral, boolean forTesting)
지정된 이름과 제공된 플래그로 사용자 만들기
|
int
|
createUser(String name, boolean guest, boolean ephemeral)
지정된 이름과 제공된 플래그로 사용자 만들기
|
int
|
createUserNoThrow(String name)
지정된 이름과 기본 플래그 0으로 사용자를 만듭니다.
|
void
|
disableKeyguard()
키가드를 사용 중지하려고 시도합니다.
|
boolean
|
doesFileExist(String deviceFilePath)
기기에 파일이 있는지 확인하는 도우미 메서드입니다.
|
boolean
|
doesFileExist(String deviceFilePath, int userId)
기기의 파일이 특정 사용자에게 있는지 확인하는 도우미 메서드입니다.
|
File
|
dumpHeap(String process, String devicePath)
system_server에서 힙을 덤프해 봅니다.
|
|
getActiveApexes()
기기에서 활성화된 APEX에 관한 정보를 가져옵니다.
|
|
getAllSettings(String namespace)
요청된 네임스페이스의 키-값 쌍을 반환합니다.
|
String
|
getAndroidId(int userId)
userId와 연결된 android-id를 찾아 반환합니다. 찾을 수 없는 경우 null을 반환합니다.
|
|
getAndroidIds()
일치하는 사용자 ID를 찾은 Android ID 맵을 만듭니다.
|
PackageInfo
|
getAppPackageInfo(String packageName)
기기에 설치된 패키지에 관한 정보를 가져옵니다.
|
|
getAppPackageInfos()
기기에 설치된 패키지의 정보를 가져옵니다.
|
InputStreamSource
|
getBugreport()
기기에서 버그 신고를 가져옵니다.
|
InputStreamSource
|
getBugreportz()
기기에서 bugreportz를 가져옵니다.
|
DeviceFoldableState
|
getCurrentFoldableState()
기기의 현재 폴더블 상태를 반환하거나 문제가 발생한 경우 null을 반환합니다.
|
int
|
getCurrentUser()
현재 실행 중인 사용자의 ID를 반환합니다.
|
|
getFoldableStates()
기기의 폴더블 상태 목록을 반환합니다.
|
|
getInstalledPackageNames()
기기에 있는 애플리케이션 패키지 이름을 가져옵니다.
|
KeyguardControllerState
|
getKeyguardState()
키가드의 현재 상태를 가져오는 객체를 반환하거나 지원되지 않는 경우 null을 반환합니다.
|
Integer
|
getMainUserId()
기본 사용자 ID를 반환합니다.
|
|
getMainlineModuleInfo()
기기에 설치된 메인라인 모듈에 관한 정보를 가져옵니다.
|
int
|
getMaxNumberOfRunningUsersSupported()
동시에 실행되는 최대 지원 사용자 수를 가져옵니다.
|
int
|
getMaxNumberOfUsersSupported()
지원되는 최대 사용자 수를 가져옵니다.
|
Integer
|
getPrimaryUserId()
기본 사용자 ID를 반환합니다.
|
InputStreamSource
|
getScreenshot()
기기에서 스크린샷을 가져옵니다.
|
InputStreamSource
|
getScreenshot(String format, boolean rescale)
기기에서 스크린샷을 캡처합니다.
|
InputStreamSource
|
getScreenshot(long displayId)
디스플레이 ID가 지정된 기기에서 스크린샷을 가져옵니다.
|
InputStreamSource
|
getScreenshot(String format)
기기에서 스크린샷을 캡처합니다.
|
String
|
getSetting(String namespace, String key)
getSetting(int, String, String) 를 참고하고 시스템 사용자에게 실행됩니다.
|
String
|
getSetting(int userId, String namespace, String key)
요청된 설정의 값을 반환합니다.
|
|
getUninstallablePackageNames()
제거할 수 있는 애플리케이션 패키지 이름을 가져옵니다.
|
int
|
getUserFlags(int userId)
지정된 사용자의 신고를 찾아 반환합니다.
|
|
getUserInfos()
기기에서 useId와 UserInfo 의 맵을 가져옵니다.
|
int
|
getUserSerialNumber(int userId)
userId를 찾으면 userId에 연결된 일련번호를 반환하고 그 외의 경우에는 -10000을 반환합니다.
|
boolean
|
hasFeature(String feature)
기기에서 기능을 사용할 수 있는지 확인합니다.
|
String
|
installPackage(File packageFile, boolean reinstall, String... extraArgs)
기기에 Android 패키지를 설치합니다.
|
String
|
installPackage(File packageFile, boolean reinstall, boolean grantPermissions, String... extraArgs)
기기에 Android 패키지를 설치합니다.
|
String
|
installPackage(File packageFile, File certFile, boolean reinstall, String... extraArgs)
기기에 Android 패키지를 설치합니다.
|
String
|
installPackageForUser(File packageFile, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)
지정된 사용자의 기기에 Android 패키지를 설치합니다.
|
String
|
installPackageForUser(File packageFile, boolean reinstall, int userId, String... extraArgs)
지정된 사용자의 기기에 Android 패키지를 설치합니다.
|
String
|
installPackages( packageFiles, boolean reinstall, String... extraArgs)
|
String
|
installPackages( packageFiles, boolean reinstall, boolean grantPermissions, String... extraArgs)
|
String
|
installPackagesForUser( packageFiles, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)
|
String
|
installPackagesForUser( packageFiles, boolean reinstall, int userId, String... extraArgs)
|
String
|
installRemotePackages( remoteApkPaths, boolean reinstall, String... extraArgs)
|
String
|
installRemotePackages( remoteApkPaths, boolean reinstall, boolean grantPermissions, String... extraArgs)
|
boolean
|
isAppEnumerationSupported()
기기의 플랫폼이 앱 열거를 지원하는지 확인
|
boolean
|
isHeadlessSystemUserMode()
기기에서 헤드리스 시스템 사용자 모드를 사용하는지 여부를 반환합니다.
|
boolean
|
isMainUserPermanentAdmin()
기본 사용자가 영구 관리자이며 삭제되거나 비관리자 상태로 다운그레이드될 수 없는지 여부를 반환합니다.
|
boolean
|
isMultiUserSupported()
멀티 사용자 지원 여부를 결정합니다.
|
boolean
|
isPackageInstalled(String packageName)
기기에 지정된 패키지 이름을 쿼리하여 현재 설치되어 있는지 여부를 확인합니다.
|
boolean
|
isPackageInstalled(String packageName, String userId)
기기에서 지정된 패키지 이름과 지정된 사용자 ID를 쿼리하여 해당 사용자에게 현재 설치되어 있는지 확인합니다.
|
boolean
|
isUserRunning(int userId)
지정된 사용자가 실행 중인지 확인합니다.
|
boolean
|
isUserSecondary(int userId)
지정된 사용자가 플래그에 따라 보조 사용자인지 여부를 반환합니다.
|
boolean
|
isUserVisible(int userId)
지정된 사용자가 표시되는지 확인합니다.
|
boolean
|
isUserVisibleOnDisplay(int userId, int displayId)
지정된 사용자가 지정된 디스플레이에 표시되는지 확인합니다.
|
boolean
|
isVisibleBackgroundUsersOnDefaultDisplaySupported()
기기가 사용자가 ERROR(/java.android.view.Display#DEFAULT_DISPLAY) 에서 백그라운드에 표시되도록 시작할 수 있는지 여부를 반환합니다.
|
boolean
|
isVisibleBackgroundUsersSupported()
기기에서 사용자가 백그라운드에서 표시되도록 시작할 수 있는지 여부를 반환합니다.
|
|
listDisplayIds()
'dumpsys SurfaceFlinger'에서 보고한 대로 기기에서 사용 가능한 디스플레이 ID 목록을 수집합니다.
|
|
listDisplayIdsForStartingVisibleBackgroundUsers()
start a user visible in the background 에 사용할 수 있는 디스플레이 목록을 가져옵니다.
|
|
listUsers()
기기의 사용자 목록을 가져옵니다.
|
boolean
|
logBugreport(String dataName, ITestLogger listener)
버그 신고를 가져와 신고자에게 로깅하는 도우미 메서드입니다.
|
void
|
notifySnapuserd(SnapuserdWaitPhase waitPhase)
|
void
|
postInvocationTearDown(Throwable exception)
호출이 완료된 후 실행되는 기기별 필수 정리에 관한 추가 단계입니다.
|
boolean
|
removeAdmin(String componentName, int userId)
지정된 사용자의 기기 관리자를 삭제하고 성공하면 true 를, 실패하면 false 를 반환합니다.
|
void
|
removeOwners()
최선을 다해 기존의 모든 기기 프로필 소유자를 삭제합니다.
|
boolean
|
removeUser(int userId)
기기에서 특정 사용자 삭제
|
boolean
|
setDeviceOwner(String componentName, int userId)
특정 사용자의 기기 관리 구성요소를 기기 소유자로 설정합니다.
|
void
|
setSetting(String namespace, String key, String value)
setSetting(int, String, String, String) 를 참고하고 시스템 사용자에게 실행됩니다.
|
void
|
setSetting(int userId, String namespace, String key, String value)
지정된 사용자의 네임스페이스에 설정 값을 추가합니다.
|
void
|
shutdownMicrodroid(ITestDevice microdroidDevice)
microdroid 기기가 있는 경우 이를 종료합니다.
|
boolean
|
startUser(int userId)
현재 중지된 경우 지정된 사용자를 백그라운드에서 시작합니다.
|
boolean
|
startUser(int userId, boolean waitFlag)
현재 중지된 경우 백그라운드에서 지정된 사용자를 시작합니다.
|
boolean
|
startVisibleBackgroundUser(int userId, int displayId, boolean waitFlag)
지정된 디스플레이에 표시되도록 백그라운드에서 지정된 사용자를 시작합니다 (즉, 사용자가 해당 디스플레이에서 활동을 실행할 수 있음).
|
boolean
|
stopUser(int userId, boolean waitFlag, boolean forceFlag)
특정 사용자를 중지합니다.
|
boolean
|
stopUser(int userId)
지정된 사용자를 중지합니다.
|
boolean
|
supportsMicrodroid()
Microdroid를 실행하기 위한 전제 조건을 확인합니다.
|
boolean
|
supportsMicrodroid(boolean protectedVm)
microdroid를 실행하기 위한 사전 조건을 확인합니다.
|
boolean
|
switchUser(int userId)
기본 시간 제한으로 다른 userId로 전환합니다.
|
boolean
|
switchUser(int userId, long timeout)
제공된 제한 시간을 기한으로 다른 userId로 전환합니다.
|
Bugreport
|
takeBugreport()
버그 신고를 가져와 처리하기 위해 Bugreport 객체 내에서 반환합니다.
|
String
|
uninstallPackage(String packageName)
기기에서 Android 패키지를 제거합니다.
|
String
|
uninstallPackageForUser(String packageName, int userId)
특정 사용자의 기기에서 Android 패키지를 제거합니다.
|
void
|
waitForSnapuserd(SnapuserdWaitPhase currentPhase)
|
필드
DISMISS_KEYGUARD_CMD
public static final String DISMISS_KEYGUARD_CMD
키가드를 닫는 데 사용할 수 있는 명령어입니다.
공개 생성자
공개 메서드
canSwitchToHeadlessSystemUser
public boolean canSwitchToHeadlessSystemUser ()
헤드리스 SYSTEM 사용자로 전환할 수 있는지 여부를 반환합니다.
clearErrorDialogs
public boolean clearErrorDialogs ()
현재 기기 UI에 표시된 오류 대화상자를 닫습니다.
반환 값 |
boolean |
대화상자가 없거나 대화상자가 성공적으로 지워진 경우 true 입니다.
그 밖의 경우에는 false 입니다. |
createUser
public int createUser (String name)
지정된 이름과 기본 플래그가 0인 사용자를 만듭니다.
매개변수 |
name |
String : 기기에서 만들 사용자 |
반환 값 |
int |
생성된 사용자 ID의 정수입니다. |
createUser
public int createUser (String name,
boolean guest,
boolean ephemeral,
boolean forTesting)
지정된 이름과 제공된 플래그로 사용자 만들기
매개변수 |
name |
String : 기기에서 만들 사용자 |
guest |
boolean : 생성 중에 사용자 플래그 --guest를 사용 설정합니다. |
ephemeral |
boolean : 생성 중에 사용자 플래그 --ephemeral을 사용 설정합니다. |
forTesting |
boolean : 생성 중에 테스트 플래그 --for-testing을 사용 설정합니다. |
createUser
public int createUser (String name,
boolean guest,
boolean ephemeral)
지정된 이름과 제공된 플래그로 사용자 만들기
매개변수 |
name |
String : 기기에서 만들 사용자 |
guest |
boolean : 생성 중에 사용자 플래그 --guest를 사용 설정합니다. |
ephemeral |
boolean : 생성 중에 사용자 플래그 --ephemeral을 사용 설정합니다. |
createUserNoThrow
public int createUserNoThrow (String name)
지정된 이름과 기본 플래그 0으로 사용자를 만듭니다.
매개변수 |
name |
String : 기기에서 만들 사용자 |
반환 값 |
int |
생성된 사용자 ID의 정수 또는 오류의 경우 -1입니다. |
disableKeyguard
public void disableKeyguard ()
키가드를 사용 중지하려고 시도합니다.
먼저 입력 전달이 준비될 때까지 기다립니다. 이는 기기가 BOOT_COMPLETE를 보고할 때와 거의 동시에 발생하며, 이는 현재 프레임워크 구현에 가끔 경합 상태가 발생하기 때문입니다. 그런 다음 키가드를 닫으라는 명령이 전송됩니다 (비보안 키가드에서만 작동).
doesFileExist
public boolean doesFileExist (String deviceFilePath)
기기에 파일이 있는지 확인하는 도우미 메서드입니다.
매개변수 |
deviceFilePath |
String : 확인할 기기에 있는 파일의 절대 경로입니다. |
반환 값 |
boolean |
파일이 있는 경우 true 이고, 그렇지 않으면 false 입니다. |
doesFileExist
public boolean doesFileExist (String deviceFilePath,
int userId)
기기의 파일이 특정 사용자에게 있는지 확인하는 도우미 메서드입니다.
매개변수 |
deviceFilePath |
String : 확인할 기기에 있는 파일의 절대 경로입니다. |
userId |
int : 파일 존재 여부를 확인할 사용자 ID입니다. |
반환 값 |
boolean |
파일이 있는 경우 true 이고, 그렇지 않으면 false 입니다. |
dumpHeap
public File dumpHeap (String process,
String devicePath)
system_server에서 힙을 덤프하려고 시도합니다. 덤프된 파일을 정리하는 것은 호출자의 책임입니다.
매개변수 |
process |
String : dumpheap를 실행할 기기 프로세스의 이름입니다. |
devicePath |
String : 기기에서 덤프를 저장할 경로입니다. 권한이 허용하는 위치여야 합니다. |
getActiveApexes
public getActiveApexes ()
기기에서 활성화된 APEX에 관한 정보를 가져옵니다.
getAllSettings
public getAllSettings (String namespace)
요청된 네임스페이스의 키-값 쌍을 반환합니다.
매개변수 |
namespace |
String : {"system", "secure", "global"} 중 하나여야 합니다. |
반환 값 |
|
키-값 쌍의 매핑입니다. 네임스페이스가 지원되지 않는 경우 null입니다. |
getAndroidId
public String getAndroidId (int userId)
userId에 연결된 android-id를 찾아서 반환합니다. 찾을 수 없는 경우 null을 반환합니다.
getAndroidIds
public getAndroidIds ()
일치하는 사용자 ID를 찾은 Android ID 맵을 만듭니다. 각 사용자 ID가 이 함수에 연결된 Android ID를 찾을 수 있다는 보장은 없으므로 일부 사용자 ID가 null과 일치할 수 있습니다.
반환 값 |
|
사용자 ID와 일치하는 Android ID의 맵입니다. |
getAppPackageInfo
public PackageInfo getAppPackageInfo (String packageName)
기기에 설치된 패키지에 관한 정보를 가져옵니다.
getAppPackageInfos
public getAppPackageInfos ()
기기에 설치된 패키지 정보를 가져옵니다.
getBugreport
public InputStreamSource getBugreport ()
기기에서 버그 신고를 가져옵니다.
이 구현은 sdcard가 없는 기기(또는 sdcard가 아직 마운트되지 않은 기기)에서 계속 작동하도록 보장됩니다.
getBugreportz
public InputStreamSource getBugreportz ()
기기에서 bugreportz를 검색합니다. Zip 형식 bugreport에는 기본 버그 신고 및 디버깅에 유용한 기타 로그 파일이 포함되어 있습니다.
'adb 버전'이 1.0.36보다 큰 경우에만 지원됩니다.
getCurrentFoldableState
public DeviceFoldableState getCurrentFoldableState ()
기기의 현재 폴더블 상태를 반환하거나 문제가 발생한 경우 null을 반환합니다.
getCurrentUser
public int getCurrentUser ()
현재 실행 중인 사용자의 ID를 반환합니다. 오류가 발생하면 -10000을 반환합니다.
getFoldableStates
public getFoldableStates ()
기기의 폴더블 상태 목록을 반환합니다. 'cmd device_state print-states'로 가져올 수 있습니다.
getInstalledPackageNames
public getInstalledPackageNames ()
기기에 있는 애플리케이션 패키지 이름을 가져옵니다.
getKeyguardState
public KeyguardControllerState getKeyguardState ()
키가드의 현재 상태를 가져오는 객체를 반환하거나 지원되지 않는 경우 null을 반환합니다.
getMainUserId
public Integer getMainUserId ()
기본 사용자 ID를 반환합니다.
반환 값 |
Integer |
주 사용자가 있는 경우 userId이고 주 사용자가 없는 경우 null입니다. |
getMainlineModuleInfo
public getMainlineModuleInfo ()
기기에 설치된 메인라인 모듈에 관한 정보를 가져옵니다.
public int getMaxNumberOfRunningUsersSupported ()
지원되는 동시에 실행되는 최대 사용자 수를 가져옵니다. 기본값은 0입니다.
반환 값 |
int |
동시에 실행하는 사용자 수를 나타내는 정수 |
public int getMaxNumberOfUsersSupported ()
지원되는 최대 사용자 수를 가져옵니다. 기본값은 0입니다.
반환 값 |
int |
지원되는 사용자 수를 나타내는 정수 |
getPrimaryUserId
public Integer getPrimaryUserId ()
기본 사용자 ID를 반환합니다.
반환 값 |
Integer |
기본 사용자가 있는 경우 기본 사용자의 userId이고 기본 사용자가 없는 경우 null입니다. |
getScreenshot
public InputStreamSource getScreenshot (String format,
boolean rescale)
기기에서 스크린샷을 가져옵니다. 크기를 줄이려면 JPEG 인코딩과 함께 getScreenshot(String)
를 사용하는 것이 좋습니다.
매개변수 |
format |
String : 지원되는 PNG, JPEG |
rescale |
boolean : 결과 이미지의 크기를 줄이기 위해 스크린샷의 크기를 조정해야 하는 경우 |
getScreenshot
public InputStreamSource getScreenshot (long displayId)
디스플레이 ID가 지정된 기기에서 스크린샷을 가져옵니다. 형식은 PNG입니다.
TODO: 'format' 및 'rescale'을 지원하도록 위의 구현을 확장합니다.
매개변수 |
displayId |
long : 스크린샷을 가져올 화면의 디스플레이 ID입니다. |
getScreenshot
public InputStreamSource getScreenshot (String format)
기기에서 스크린샷을 캡처합니다.
크기를 줄이려면 JPEG 인코딩과 함께 getScreenshot(format)을 사용하는 것이 좋습니다.
매개변수 |
format |
String : 지원되는 PNG, JPEG |
getSetting
public String getSetting (int userId,
String namespace,
String key)
요청된 설정의 값을 반환합니다.
네임스페이스는 {"system", "secure", "global"} 중 하나여야 합니다.
매개변수 |
userId |
int |
namespace |
String |
key |
String |
반환 값 |
String |
사용자의 namespace:key와 연결된 값입니다. 찾을 수 없는 경우 null입니다. |
getUninstallablePackageNames
public getUninstallablePackageNames ()
제거할 수 있는 애플리케이션 패키지 이름을 가져옵니다. 이는 현재 비시스템 패키지 및 업데이트된 시스템 패키지로 정의됩니다.
getUserFlags
public int getUserFlags (int userId)
지정된 사용자의 신고를 찾아 반환합니다.
플래그는 Android 오픈소스 프로젝트의 'android.content.pm.UserInfo' 클래스에 정의됩니다.
반환 값 |
int |
제공된 userId와 연결된 플래그. 그 외 경우에는 -10000입니다. |
getUserSerialNumber
public int getUserSerialNumber (int userId)
userId와 연결된 일련번호를 찾은 경우 반환하고, 그렇지 않은 경우에는 -10000을 반환합니다.
hasFeature
public boolean hasFeature (String feature)
기기에서 기능을 사용할 수 있는지 확인합니다.
매개변수 |
feature |
String : 'feature:' 또는 '' 형식을 직접 사용해야 합니다. |
반환 값 |
boolean |
기능이 있으면 true, 그렇지 않으면 false입니다. |
installPackage
public String installPackage (File packageFile,
boolean reinstall,
String... extraArgs)
기기에 Android 패키지를 설치합니다.
매개변수 |
packageFile |
File : 설치할 APK 파일입니다. |
reinstall |
boolean : 재설치를 실행해야 하는 경우 true |
extraArgs |
String : 전달할 선택적 추가 인수입니다. 사용 가능한 옵션은 'adb shell pm -h'를 참고하세요. |
반환 값 |
String |
오류 코드가 있는 String 또는 성공인 경우 null |
installPackage
public String installPackage (File packageFile,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
기기에 Android 패키지를 설치합니다.
참고: 설치 시 런타임 권한 부여를 명시적으로 제어해야 하는 사용 사례에서만 이 함수를 호출해야 합니다.
매개변수 |
packageFile |
File : 설치할 APK 파일입니다. |
reinstall |
boolean : 재설치가 필요한 경우 true |
grantPermissions |
boolean : 설치 시 모든 런타임 권한을 부여해야 하는 경우 |
extraArgs |
String : 전달할 선택적 추가 인수입니다. 사용 가능한 옵션은 'adb shell pm -h'를 참고하세요. |
반환 값 |
String |
오류 코드가 있는 String 또는 성공인 경우 null |
installPackage
public String installPackage (File packageFile,
File certFile,
boolean reinstall,
String... extraArgs)
기기에 Android 패키지를 설치합니다.
참고: 설치 시 런타임 권한 부여를 명시적으로 제어해야 하는 사용 사례에서만 이 함수를 호출해야 합니다.
매개변수 |
packageFile |
File : 설치할 APK 파일 |
certFile |
File : 재설치를 실행해야 하는 경우 true |
reinstall |
boolean : 설치 시 모든 런타임 권한을 부여해야 하는 경우 |
extraArgs |
String : 전달할 선택적 추가 인수입니다. 사용 가능한 옵션은 'adb shell pm -h'를 참고하세요. |
반환 값 |
String |
오류 코드가 있는 String 또는 성공인 경우 null |
installPackageForUser
public String installPackageForUser (File packageFile,
boolean reinstall,
boolean grantPermissions,
int userId,
String... extraArgs)
지정된 사용자의 기기에 Android 패키지를 설치합니다.
참고: 설치 시 런타임 권한 부여를 명시적으로 제어해야 하는 사용 사례만 이 함수를 호출해야 합니다.
매개변수 |
packageFile |
File : 설치할 APK 파일입니다. |
reinstall |
boolean : 재설치가 필요한 경우 true |
grantPermissions |
boolean : 설치 시 모든 런타임 권한을 부여해야 하는 경우 |
userId |
int : 설치할 정수 사용자 ID입니다. |
extraArgs |
String : 전달할 추가 인수(선택사항)입니다. 사용 가능한 옵션은 'adb shell pm -h'를 참고하세요. |
반환 값 |
String |
오류 코드가 있는 String 또는 성공한 경우 null |
installPackageForUser
public String installPackageForUser (File packageFile,
boolean reinstall,
int userId,
String... extraArgs)
지정된 사용자의 기기에 Android 패키지를 설치합니다.
매개변수 |
packageFile |
File : 설치할 APK 파일입니다. |
reinstall |
boolean : 재설치를 실행해야 하는 경우 true |
userId |
int : 설치할 정수 사용자 ID입니다. |
extraArgs |
String : 전달할 추가 인수(선택사항)입니다. 사용 가능한 옵션은 'adb shell pm -h'를 참고하세요. |
반환 값 |
String |
오류 코드가 있는 String 또는 성공인 경우 null |
installPackages
public String installPackages ( packageFiles,
boolean reinstall,
String... extraArgs)
매개변수 |
packageFiles |
|
reinstall |
boolean |
extraArgs |
String |
installPackages
public String installPackages ( packageFiles,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
매개변수 |
packageFiles |
|
reinstall |
boolean |
grantPermissions |
boolean |
extraArgs |
String |
installPackagesForUser
public String installPackagesForUser ( packageFiles,
boolean reinstall,
boolean grantPermissions,
int userId,
String... extraArgs)
매개변수 |
packageFiles |
|
reinstall |
boolean |
grantPermissions |
boolean |
userId |
int |
extraArgs |
String |
installPackagesForUser
public String installPackagesForUser ( packageFiles,
boolean reinstall,
int userId,
String... extraArgs)
매개변수 |
packageFiles |
|
reinstall |
boolean |
userId |
int |
extraArgs |
String |
installRemotePackages
public String installRemotePackages ( remoteApkPaths,
boolean reinstall,
String... extraArgs)
매개변수 |
remoteApkPaths |
|
reinstall |
boolean |
extraArgs |
String |
installRemotePackages
public String installRemotePackages ( remoteApkPaths,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
매개변수 |
remoteApkPaths |
|
reinstall |
boolean |
grantPermissions |
boolean |
extraArgs |
String |
isAppEnumerationSupported
public boolean isAppEnumerationSupported ()
기기의 플랫폼이 앱 열거를 지원하는지 확인
반환 값 |
boolean |
앱 열거가 지원되는 경우 true이고, 그렇지 않으면 false입니다. |
isHeadlessSystemUserMode
public boolean isHeadlessSystemUserMode ()
기기에서 헤드리스 시스템 사용자 모드를 사용하는지 여부를 반환합니다.
isMainUserPermanentAdmin
public boolean isMainUserPermanentAdmin ()
기본 사용자가 영구 관리자이며 삭제되거나 비관리자 상태로 다운그레이드될 수 없는지 여부를 반환합니다.
isMultiUserSupported
public boolean isMultiUserSupported ()
멀티 사용자를 지원하는지 확인합니다.
반환 값 |
boolean |
멀티 사용자를 지원하는 경우 true이고 그렇지 않으면 false입니다. |
isPackageInstalled
public boolean isPackageInstalled (String packageName)
기기에 지정된 패키지 이름을 쿼리하여 현재 설치되어 있는지 여부를 확인합니다.
반환 값 |
boolean |
패키지가 설치된 것으로 보고되면 true입니다. 그렇지 않으면 false입니다. |
isPackageInstalled
public boolean isPackageInstalled (String packageName,
String userId)
기기에서 지정된 패키지 이름과 지정된 사용자 ID를 쿼리하여 해당 사용자에게 현재 설치되어 있는지 확인합니다.
매개변수 |
packageName |
String : 설치 여부를 확인하는 패키지입니다. |
userId |
String : 패키지가 설치되어 있는지 확인하는 사용자 ID입니다. null인 경우 기본 사용자 0이 사용됩니다. |
반환 값 |
boolean |
패키지가 설치된 것으로 보고되면 true입니다. 그렇지 않으면 false입니다. |
isUserRunning
public boolean isUserRunning (int userId)
지정된 사용자가 실행 중인지 확인합니다.
반환 값 |
boolean |
사용자가 실행 중인 경우 true이고, 그 밖의 경우에는 false입니다. |
isUserSecondary
public boolean isUserSecondary (int userId)
지정된 사용자가 플래그에 따라 보조 사용자인지 여부를 반환합니다.
반환 값 |
boolean |
사용자가 보조 사용자인 경우 true이고, 그렇지 않으면 false입니다. |
isUserVisible
public boolean isUserVisible (int userId)
지정된 사용자가 표시되는지 확인합니다.
'표시된' 사용자는 '인간' 사용자와 상호작용하고 있으므로 활동을 실행할 수 있는 사용자입니다 (일반적으로 기본 디스플레이에서).
isUserVisibleOnDisplay
public boolean isUserVisibleOnDisplay (int userId,
int displayId)
지정된 사용자가 지정된 디스플레이에 표시되는지 확인합니다.
'표시된' 사용자는 '인간' 사용자와 상호작용하고 있으므로 해당 디스플레이에서 활동을 실행할 수 있는 사용자입니다.
매개변수 |
userId |
int |
displayId |
int |
listDisplayIds
public listDisplayIds ()
'dumpsys SurfaceFlinger'에서 보고한 대로 기기에서 사용 가능한 디스플레이 ID 목록을 수집합니다.
반환 값 |
|
디스플레이 목록입니다. 기본값은 항상 기본 디스플레이 0을 반환합니다. |
logBugreport
public boolean logBugreport (String dataName,
ITestLogger listener)
버그 신고를 가져와 신고자에게 로깅하는 도우미 메서드입니다.
매개변수 |
dataName |
String : 버그 신고가 보고될 이름입니다. |
listener |
ITestLogger : 버그 신고를 기록하는 ITestLogger 입니다. |
반환 값 |
boolean |
로깅에 성공하면 true, 실패하면 false입니다. |
notifySnapuserd
public void notifySnapuserd (SnapuserdWaitPhase waitPhase)
매개변수 |
waitPhase |
SnapuserdWaitPhase |
postInvocationTearDown
public void postInvocationTearDown (Throwable exception)
호출이 완료된 후 실행되는 기기별 필수 정리에 관한 추가 단계입니다.
매개변수 |
exception |
Throwable : 호출 실패로 인해 발생한 최종 예외입니다(있는 경우). |
관리자 삭제
public boolean removeAdmin (String componentName,
int userId)
지정된 사용자에서 지정된 기기 관리자를 삭제하고 성공하면 true
를, 실패하면 false
를 반환합니다.
매개변수 |
componentName |
String : 삭제할 기기 관리자의 ID입니다. |
userId |
int : 기기 관리자가 거주하는 사용자의 비율 |
반환 값 |
boolean |
성공하면 true를 반환하고 그렇지 않으면 false를 반환합니다. |
removeOwners
public void removeOwners ()
최선을 다해 기존의 모든 기기 프로필 소유자를 삭제합니다.
removeUser
public boolean removeUser (int userId)
기기에서 특정 사용자를 삭제합니다.
반환 값 |
boolean |
사용자를 삭제하는 데 성공하면 true를 반환하고 그렇지 않으면 false를 반환합니다. |
setDeviceOwner
public boolean setDeviceOwner (String componentName,
int userId)
특정 사용자의 기기 관리자 구성요소를 기기 소유자로 설정합니다.
매개변수 |
componentName |
String : 기기 관리자가 기기 소유자가 됩니다. |
userId |
int : 기기 소유자가 거주하는 사용자의 |
반환 값 |
boolean |
성공하면 true를 반환하고 그렇지 않으면 false를 반환합니다. |
setSetting
public void setSetting (int userId,
String namespace,
String key,
String value)
특정 사용자의 네임스페이스에 설정 값을 추가합니다. 일부 설정은 재부팅 후에만 사용할 수 있습니다.
네임스페이스는 {"system", "secure", "global"} 중 하나여야 합니다.
매개변수 |
userId |
int |
namespace |
String |
key |
String |
value |
String |
shutdownMicrodroid
public void shutdownMicrodroid (ITestDevice microdroidDevice)
microdroid 기기(있는 경우)를 종료합니다.
매개변수 |
microdroidDevice |
ITestDevice |
시작 사용자
public boolean startUser (int userId)
현재 중지된 경우 백그라운드에서 지정된 사용자를 시작합니다. 사용자가 이미 백그라운드에서 실행 중이면 이 메서드는 NOOP입니다.
매개변수 |
userId |
int : 백그라운드에서 시작할 사용자입니다. |
반환 값 |
boolean |
사용자가 백그라운드에서 성공적으로 시작된 경우 true입니다. |
startUser
public boolean startUser (int userId,
boolean waitFlag)
현재 중지된 경우 백그라운드에서 지정된 사용자를 시작합니다. 사용자가 이미 백그라운드에서 실행 중인 경우 이 메서드는 NOOP입니다. 작업이 적용될 때까지 기다리는 추가 플래그를 제공할 수 있습니다.
매개변수 |
userId |
int : 백그라운드에서 시작할 사용자입니다. |
waitFlag |
boolean : 사용자가 시작되고 잠금 해제될 때까지 명령어가 대기합니다. |
반환 값 |
boolean |
사용자가 백그라운드에서 성공적으로 시작된 경우 true입니다. |
startVisibleBackgroundUser
public boolean startVisibleBackgroundUser (int userId,
int displayId,
boolean waitFlag)
지정된 디스플레이에 표시되도록 백그라운드에서 지정된 사용자를 시작합니다 (즉, 사용자가 해당 디스플레이에서 활동을 실행할 수 있음).
참고: 이 명령어는 사용자가 존재하는지, 디스플레이를 사용할 수 있는지, device supports such feature
등을 확인하지 않습니다.
매개변수 |
userId |
int : 백그라운드에서 시작할 사용자입니다. |
displayId |
int : 사용자가 표시할 시작 표시 |
waitFlag |
boolean : 사용자가 시작되고 잠금 해제될 때까지 명령어가 대기합니다. |
반환 값 |
boolean |
true : 사용자가 백그라운드에서 성공적으로 표시된 경우 |
중지 사용자
public boolean stopUser (int userId,
boolean waitFlag,
boolean forceFlag)
지정된 사용자를 중지합니다. 작업이 적용될 때까지 기다리고 사용자를 강제 종료하는 추가 플래그를 제공할 수 있습니다. 현재 사용자와 시스템 사용자는 중지할 수 없습니다.
매개변수 |
userId |
int : 중지할 사용자입니다. |
waitFlag |
boolean : 사용자가 중지될 때까지 명령어를 대기시킵니다. |
forceFlag |
boolean : 사용자를 강제 종료합니다. |
반환 값 |
boolean |
사용자가 중지된 경우 true입니다. |
stopUser
public boolean stopUser (int userId)
지정된 사용자를 중지합니다. 사용자가 이미 중지된 경우 이 메서드는 NOOP입니다.
현재 사용자와 시스템 사용자는 중지할 수 없습니다.
매개변수 |
userId |
int : 중지할 사용자입니다. |
반환 값 |
boolean |
사용자가 중지된 경우 true입니다. |
supportsMicrodroid
public boolean supportsMicrodroid ()
microdroid를 실행하기 위한 사전 조건을 확인합니다.
반환 값 |
boolean |
전제조건이 충족되면 true를 반환하고 그렇지 않으면 false를 반환합니다. |
supportsMicrodroid
public boolean supportsMicrodroid (boolean protectedVm)
Microdroid를 실행하기 위한 전제 조건을 확인합니다.
매개변수 |
protectedVm |
boolean : microdroid가 보호된 VM에서 실행되도록 설계된 경우 true입니다. |
반환 값 |
boolean |
전제 조건이 충족되면 true를 반환하고 그렇지 않으면 false를 반환합니다. |
switchUser
public boolean switchUser (int userId)
기본 시간 제한으로 다른 userId로 전환합니다. switchUser(int, long)
.
반환 값 |
boolean |
새 userId가 userId 제공업체와 일치하는 경우 true입니다. 그렇지 않으면 false입니다. |
switchUser
public boolean switchUser (int userId,
long timeout)
제공된 제한 시간을 기한으로 다른 userId로 전환합니다.
사용자 변경이 완료된 후 키가드 사용 중지를 시도합니다.
매개변수 |
userId |
int |
timeout |
long : switch-user 실패에 대해 false를 반환하기 전에 기다립니다. |
반환 값 |
boolean |
새 userId가 userId 제공업체와 일치하는 경우 true입니다. 그렇지 않으면 false입니다. |
uninstallPackage
public String uninstallPackage (String packageName)
기기에서 Android 패키지를 제거합니다.
매개변수 |
packageName |
String : 제거할 Android 패키지입니다. |
반환 값 |
String |
오류 코드가 있는 String 또는 성공한 경우 null |
uninstallPackageForUser
public String uninstallPackageForUser (String packageName,
int userId)
특정 사용자의 기기에서 Android 패키지를 제거합니다.
매개변수 |
packageName |
String : 제거할 Android 패키지입니다. |
userId |
int : 제거할 정수 사용자 ID입니다. |
반환 값 |
String |
오류 코드가 있는 String 또는 성공한 경우 null |
Snapuserd 대기 중
public void waitForSnapuserd (SnapuserdWaitPhase currentPhase)
매개변수 |
currentPhase |
SnapuserdWaitPhase |
보호된 메서드
createParser
protected AaptParser createParser (File appFile)
doAdbReboot
protected void doAdbReboot (NativeDevice.RebootMode rebootMode,
String reason)
adb 재부팅을 실행합니다.
매개변수 |
rebootMode |
NativeDevice.RebootMode : 이 재부팅의 모드입니다. |
reason |
String : 이 재부팅에 관한 정보입니다. |
getBugreportzInternal
protected File getBugreportzInternal ()
bugreportz ZIP 파일을 ERROR(/File)
로 가져오는 내부 도우미 메서드입니다.
getCheckNewUserSleep
protected long getCheckNewUserSleep ()
테스트를 위해 노출됩니다.
getHostCurrentTime
protected long getHostCurrentTime ()
테스트용으로 노출됨
prePostBootSetup
protected void prePostBootSetup ()
각 기기 유형 (AndroidNativeDevice, TestDevice)이 특정 부팅 후 설정에 대해 이 메서드를 재정의할 수 있습니다.