TestDevice

public class TestDevice
extends NativeDevice

java.lang.Object
   ↳ com.android.tradefed.device.NativeDevice
     ↳ com.android.tradefed.device.TestDevice


전체 스택 Android 기기용 ITestDevice 구현

요약

중첩된 클래스

class TestDevice.MicrodroidBuilder

Microdroid TestDevice를 만드는 데 사용되는 빌더입니다. 

필드

public static final String DISMISS_KEYGUARD_CMD

키가드를 닫는 데 사용할 수 있는 명령어입니다.

공개 생성자

TestDevice(IDevice device, IDeviceStateMonitor stateMonitor, IDeviceMonitor allocationMonitor)

공개 메서드

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)

보호된 메서드

AaptParser createParser(File appFile)
void doAdbReboot(NativeDevice.RebootMode rebootMode, String reason)

adb 재부팅을 실행합니다.

InputStreamSource getBugreportInternal()
File getBugreportzInternal()

bugreportz ZIP 파일을 ERROR(/File)로 가져오는 내부 도우미 메서드입니다.

long getCheckNewUserSleep()

테스트를 위해 노출됩니다.

long getHostCurrentTime()

테스트를 위해 노출됨

void prePostBootSetup()

각 기기 유형 (AndroidNativeDevice, TestDevice)이 특정 부팅 후 설정에 대해 이 메서드를 재정의할 수 있습니다.

필드

DISMISS_KEYGUARD_CMD

public static final String DISMISS_KEYGUARD_CMD

키가드를 닫는 데 사용할 수 있는 명령어입니다.

공개 생성자

TestDevice

public TestDevice (IDevice device, 
                IDeviceStateMonitor stateMonitor, 
                IDeviceMonitor allocationMonitor)

공개 메서드

canSwitchToHeadlessSystemUser

public boolean canSwitchToHeadlessSystemUser ()

헤드리스 SYSTEM 사용자로 전환할 수 있는지 여부를 반환합니다.

반환 값
boolean

생성 값
DeviceNotAvailableException

clearErrorDialogs

public boolean clearErrorDialogs ()

현재 기기 UI에 표시된 오류 대화상자를 닫습니다.

반환 값
boolean 대화상자가 없거나 대화상자가 성공적으로 지워진 경우 true입니다. 그 밖의 경우에는 false입니다.

생성 값
DeviceNotAvailableException

createUser

public int createUser (String name)

지정된 이름과 기본 플래그가 0인 사용자를 만듭니다.

매개변수
name String: 기기에서 만들 사용자

반환 값
int 생성된 사용자 ID의 정수입니다.

생성 값
DeviceNotAvailableException

createUser

public int createUser (String name, 
                boolean guest, 
                boolean ephemeral, 
                boolean forTesting)

지정된 이름과 제공된 플래그로 사용자 만들기

매개변수
name String: 기기에서 만들 사용자

guest boolean: 생성 중에 사용자 플래그 --guest를 사용 설정합니다.

ephemeral boolean: 생성 중에 사용자 플래그 --ephemeral을 사용 설정합니다.

forTesting boolean: 생성 중에 테스트 플래그 --for-testing을 사용 설정합니다.

반환 값
int 생성된 사용자의 ID입니다.

생성 값
DeviceNotAvailableException

createUser

public int createUser (String name, 
                boolean guest, 
                boolean ephemeral)

지정된 이름과 제공된 플래그로 사용자 만들기

매개변수
name String: 기기에서 만들 사용자

guest boolean: 생성 중에 사용자 플래그 --guest를 사용 설정합니다.

ephemeral boolean: 생성 중에 사용자 플래그 --ephemeral을 사용 설정합니다.

반환 값
int 생성된 사용자의 ID입니다.

생성 값
DeviceNotAvailableException

createUserNoThrow

public int createUserNoThrow (String name)

지정된 이름과 기본 플래그 0으로 사용자를 만듭니다.

매개변수
name String: 기기에서 만들 사용자

반환 값
int 생성된 사용자 ID의 정수 또는 오류의 경우 -1입니다.

생성 값
DeviceNotAvailableException

disableKeyguard

public void disableKeyguard ()

키가드를 사용 중지하려고 시도합니다.

먼저 입력 전달이 준비될 때까지 기다립니다. 이는 기기가 BOOT_COMPLETE를 보고할 때와 거의 동시에 발생하며, 이는 현재 프레임워크 구현에 가끔 경합 상태가 발생하기 때문입니다. 그런 다음 키가드를 닫으라는 명령이 전송됩니다 (비보안 키가드에서만 작동).

생성 값
DeviceNotAvailableException

doesFileExist

public boolean doesFileExist (String deviceFilePath)

기기에 파일이 있는지 확인하는 도우미 메서드입니다.

매개변수
deviceFilePath String: 확인할 기기에 있는 파일의 절대 경로입니다.

반환 값
boolean 파일이 있는 경우 true이고, 그렇지 않으면 false입니다.

생성 값
DeviceNotAvailableException

doesFileExist

public boolean doesFileExist (String deviceFilePath, 
                int userId)

기기의 파일이 특정 사용자에게 있는지 확인하는 도우미 메서드입니다.

매개변수
deviceFilePath String: 확인할 기기에 있는 파일의 절대 경로입니다.

userId int: 파일 존재 여부를 확인할 사용자 ID입니다.

반환 값
boolean 파일이 있는 경우 true이고, 그렇지 않으면 false입니다.

생성 값
DeviceNotAvailableException

dumpHeap

public File dumpHeap (String process, 
                String devicePath)

system_server에서 힙을 덤프하려고 시도합니다. 덤프된 파일을 정리하는 것은 호출자의 책임입니다.

매개변수
process String: dumpheap를 실행할 기기 프로세스의 이름입니다.

devicePath String: 기기에서 덤프를 저장할 경로입니다. 권한이 허용하는 위치여야 합니다.

반환 값
File 보고서가 포함된 ERROR(/File) 실패한 경우 null입니다.

생성 값
DeviceNotAvailableException

getActiveApexes

public  getActiveApexes ()

기기에서 활성화된 APEX에 관한 정보를 가져옵니다.

반환 값
현재 기기에서 활성화된 ApexInfoERROR(/Set)

생성 값
DeviceNotAvailableException

getAllSettings

public  getAllSettings (String namespace)

요청된 네임스페이스의 키-값 쌍을 반환합니다.

매개변수
namespace String: {"system", "secure", "global"} 중 하나여야 합니다.

반환 값
키-값 쌍의 매핑입니다. 네임스페이스가 지원되지 않는 경우 null입니다.

생성 값
DeviceNotAvailableException

getAndroidId

public String getAndroidId (int userId)

userId에 연결된 android-id를 찾아서 반환합니다. 찾을 수 없는 경우 null을 반환합니다.

매개변수
userId int

반환 값
String

생성 값
DeviceNotAvailableException

getAndroidIds

public  getAndroidIds ()

일치하는 사용자 ID를 찾은 Android ID 맵을 만듭니다. 각 사용자 ID가 이 함수에 연결된 Android ID를 찾을 수 있다는 보장은 없으므로 일부 사용자 ID가 null과 일치할 수 있습니다.

반환 값
사용자 ID와 일치하는 Android ID의 맵입니다.

생성 값
DeviceNotAvailableException

getAppPackageInfo

public PackageInfo getAppPackageInfo (String packageName)

기기에 설치된 패키지에 관한 정보를 가져옵니다.

매개변수
packageName String

반환 값
PackageInfo 정보를 가져올 수 없는 경우 PackageInfo 또는 null

생성 값
DeviceNotAvailableException

getAppPackageInfos

public  getAppPackageInfos ()

기기에 설치된 패키지 정보를 가져옵니다.

반환 값
PackageInfo개 중 ERROR(/List)개가 기기에 설치되었습니다.

생성 값
DeviceNotAvailableException

getBugreport

public InputStreamSource getBugreport ()

기기에서 버그 신고를 가져옵니다.

이 구현은 sdcard가 없는 기기(또는 sdcard가 아직 마운트되지 않은 기기)에서 계속 작동하도록 보장됩니다.

반환 값
InputStreamSource 요청 시 버그 신고 콘텐츠를 생성하는 InputStreamSource입니다. 실패하면 InputStreamSource에서 빈 ERROR(/InputStream)를 생성합니다.

getBugreportz

public InputStreamSource getBugreportz ()

기기에서 bugreportz를 검색합니다. Zip 형식 bugreport에는 기본 버그 신고 및 디버깅에 유용한 기타 로그 파일이 포함되어 있습니다.

'adb 버전'이 1.0.36보다 큰 경우에만 지원됩니다.

반환 값
InputStreamSource bugreportz가 포함된 zip 파일의 InputStreamSource입니다. 실패하면 null을 반환합니다.

getCurrentFoldableState

public DeviceFoldableState getCurrentFoldableState ()

기기의 현재 폴더블 상태를 반환하거나 문제가 발생한 경우 null을 반환합니다.

반환 값
DeviceFoldableState

생성 값
DeviceNotAvailableException

getCurrentUser

public int getCurrentUser ()

현재 실행 중인 사용자의 ID를 반환합니다. 오류가 발생하면 -10000을 반환합니다.

반환 값
int

생성 값
DeviceNotAvailableException

getFoldableStates

public  getFoldableStates ()

기기의 폴더블 상태 목록을 반환합니다. 'cmd device_state print-states'로 가져올 수 있습니다.

반환 값

생성 값
DeviceNotAvailableException

getInstalledPackageNames

public  getInstalledPackageNames ()

기기에 있는 애플리케이션 패키지 이름을 가져옵니다.

반환 값
현재 기기에 설치된 String 패키지 이름의 ERROR(/Set)입니다.

생성 값
DeviceNotAvailableException

getKeyguardState

public KeyguardControllerState getKeyguardState ()

키가드의 현재 상태를 가져오는 객체를 반환하거나 지원되지 않는 경우 null을 반환합니다.

반환 값
KeyguardControllerState 키가드 상태의 스냅샷을 포함하는 KeyguardControllerState 및 키가드 쿼리가 지원되지 않는 경우 Null을 반환합니다.

생성 값
DeviceNotAvailableException

getMainUserId

public Integer getMainUserId ()

기본 사용자 ID를 반환합니다.

반환 값
Integer 주 사용자가 있는 경우 userId이고 주 사용자가 없는 경우 null입니다.

생성 값
DeviceNotAvailableException

getMainlineModuleInfo

public  getMainlineModuleInfo ()

기기에 설치된 메인라인 모듈에 관한 정보를 가져옵니다.

반환 값
현재 기기에 설치된 메인라인 모듈 String개 중 ERROR(/Set)

생성 값
DeviceNotAvailableException

getMaxNumberOfRunningUsersSupported

public int getMaxNumberOfRunningUsersSupported ()

지원되는 동시에 실행되는 최대 사용자 수를 가져옵니다. 기본값은 0입니다.

반환 값
int 동시에 실행하는 사용자 수를 나타내는 정수

생성 값
DeviceNotAvailableException

getMaxNumberOfUsersSupported

public int getMaxNumberOfUsersSupported ()

지원되는 최대 사용자 수를 가져옵니다. 기본값은 0입니다.

반환 값
int 지원되는 사용자 수를 나타내는 정수

생성 값
DeviceNotAvailableException

getPrimaryUserId

public Integer getPrimaryUserId ()

기본 사용자 ID를 반환합니다.

반환 값
Integer 기본 사용자가 있는 경우 기본 사용자의 userId이고 기본 사용자가 없는 경우 null입니다.

생성 값
DeviceNotAvailableException

getScreenshot

public InputStreamSource getScreenshot ()

기기에서 스크린샷을 캡처합니다.

반환 값
InputStreamSource 스크린샷의 InputStreamSource(PNG 형식) 또는 스크린샷을 찍지 못한 경우 null입니다.

생성 값
DeviceNotAvailableException

getScreenshot

public InputStreamSource getScreenshot (String format, 
                boolean rescale)

기기에서 스크린샷을 가져옵니다. 크기를 줄이려면 JPEG 인코딩과 함께 getScreenshot(String)를 사용하는 것이 좋습니다.

매개변수
format String: 지원되는 PNG, JPEG

rescale boolean: 결과 이미지의 크기를 줄이기 위해 스크린샷의 크기를 조정해야 하는 경우

반환 값
InputStreamSource 스크린샷의 InputStreamSource(형식) 또는 스크린샷을 찍지 못한 경우 null입니다.

생성 값
DeviceNotAvailableException

getScreenshot

public InputStreamSource getScreenshot (long displayId)

디스플레이 ID가 지정된 기기에서 스크린샷을 가져옵니다. 형식은 PNG입니다.

TODO: 'format' 및 'rescale'을 지원하도록 위의 구현을 확장합니다.

매개변수
displayId long: 스크린샷을 가져올 화면의 디스플레이 ID입니다.

반환 값
InputStreamSource 스크린샷의 InputStreamSource(형식) 또는 스크린샷을 찍지 못한 경우 null입니다.

생성 값
DeviceNotAvailableException

getScreenshot

public InputStreamSource getScreenshot (String format)

기기에서 스크린샷을 캡처합니다. 크기를 줄이려면 JPEG 인코딩과 함께 getScreenshot(format)을 사용하는 것이 좋습니다.

매개변수
format String: 지원되는 PNG, JPEG

반환 값
InputStreamSource 스크린샷의 InputStreamSource(형식) 또는 스크린샷을 찍지 못한 경우 null입니다.

생성 값
DeviceNotAvailableException

getSetting

public String getSetting (String namespace, 
                String key)

getSetting(int, String, String)를 참고하고 시스템 사용자에게 실행됩니다.

매개변수
namespace String

key String

반환 값
String

생성 값
DeviceNotAvailableException

getSetting

public String getSetting (int userId, 
                String namespace, 
                String key)

요청된 설정의 값을 반환합니다. 네임스페이스는 {"system", "secure", "global"} 중 하나여야 합니다.

매개변수
userId int

namespace String

key String

반환 값
String 사용자의 namespace:key와 연결된 값입니다. 찾을 수 없는 경우 null입니다.

생성 값
DeviceNotAvailableException

getUninstallablePackageNames

public  getUninstallablePackageNames ()

제거할 수 있는 애플리케이션 패키지 이름을 가져옵니다. 이는 현재 비시스템 패키지 및 업데이트된 시스템 패키지로 정의됩니다.

반환 값
현재 기기에 설치된 제거 불가능한 String 패키지 이름의 ERROR(/Set)입니다.

생성 값
DeviceNotAvailableException

getUserFlags

public int getUserFlags (int userId)

지정된 사용자의 신고를 찾아 반환합니다. 플래그는 Android 오픈소스 프로젝트의 'android.content.pm.UserInfo' 클래스에 정의됩니다.

매개변수
userId int

반환 값
int 제공된 userId와 연결된 플래그. 그 외 경우에는 -10000입니다.

생성 값
DeviceNotAvailableException

사용자 정보 가져오기

public  getUserInfos ()

기기에서 UserInfo에 대한 useId의 맵을 가져옵니다. 기기의 출력이 예상과 다르면 DeviceRuntimeException이 발생합니다.

반환 값
UserInfo 객체 목록입니다.

생성 값
DeviceNotAvailableException

getUserSerialNumber

public int getUserSerialNumber (int userId)

userId와 연결된 일련번호를 찾은 경우 반환하고, 그렇지 않은 경우에는 -10000을 반환합니다.

매개변수
userId int

반환 값
int

생성 값
DeviceNotAvailableException

hasFeature

public boolean hasFeature (String feature)

기기에서 기능을 사용할 수 있는지 확인합니다.

매개변수
feature String: 'feature:' 또는 '' 형식을 직접 사용해야 합니다.

반환 값
boolean 기능이 있으면 true, 그렇지 않으면 false입니다.

생성 값
DeviceNotAvailableException

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

생성 값
DeviceNotAvailableException

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

생성 값
DeviceNotAvailableException

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

생성 값
DeviceNotAvailableException

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

생성 값
DeviceNotAvailableException

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

생성 값
DeviceNotAvailableException

installPackages

public String installPackages ( packageFiles, 
                boolean reinstall, 
                String... extraArgs)

매개변수
packageFiles

reinstall boolean

extraArgs String

반환 값
String

생성 값
DeviceNotAvailableException

installPackages

public String installPackages ( packageFiles, 
                boolean reinstall, 
                boolean grantPermissions, 
                String... extraArgs)

매개변수
packageFiles

reinstall boolean

grantPermissions boolean

extraArgs String

반환 값
String

생성 값
DeviceNotAvailableException

installPackagesForUser

public String installPackagesForUser ( packageFiles, 
                boolean reinstall, 
                boolean grantPermissions, 
                int userId, 
                String... extraArgs)

매개변수
packageFiles

reinstall boolean

grantPermissions boolean

userId int

extraArgs String

반환 값
String

생성 값
DeviceNotAvailableException

installPackagesForUser

public String installPackagesForUser ( packageFiles, 
                boolean reinstall, 
                int userId, 
                String... extraArgs)

매개변수
packageFiles

reinstall boolean

userId int

extraArgs String

반환 값
String

생성 값
DeviceNotAvailableException

installRemotePackages

public String installRemotePackages ( remoteApkPaths, 
                boolean reinstall, 
                String... extraArgs)

매개변수
remoteApkPaths

reinstall boolean

extraArgs String

반환 값
String

생성 값
DeviceNotAvailableException

installRemotePackages

public String installRemotePackages ( remoteApkPaths, 
                boolean reinstall, 
                boolean grantPermissions, 
                String... extraArgs)

매개변수
remoteApkPaths

reinstall boolean

grantPermissions boolean

extraArgs String

반환 값
String

생성 값
DeviceNotAvailableException

isAppEnumerationSupported

public boolean isAppEnumerationSupported ()

기기의 플랫폼이 앱 열거를 지원하는지 확인

반환 값
boolean 앱 열거가 지원되는 경우 true이고, 그렇지 않으면 false입니다.

생성 값
DeviceNotAvailableException

isHeadlessSystemUserMode

public boolean isHeadlessSystemUserMode ()

기기에서 헤드리스 시스템 사용자 모드를 사용하는지 여부를 반환합니다.

반환 값
boolean

생성 값
DeviceNotAvailableException

isMainUserPermanentAdmin

public boolean isMainUserPermanentAdmin ()

기본 사용자가 영구 관리자이며 삭제되거나 비관리자 상태로 다운그레이드될 수 없는지 여부를 반환합니다.

반환 값
boolean

생성 값
DeviceNotAvailableException

isMultiUserSupported

public boolean isMultiUserSupported ()

멀티 사용자를 지원하는지 확인합니다.

반환 값
boolean 멀티 사용자를 지원하는 경우 true이고 그렇지 않으면 false입니다.

생성 값
DeviceNotAvailableException

isPackageInstalled

public boolean isPackageInstalled (String packageName)

기기에 지정된 패키지 이름을 쿼리하여 현재 설치되어 있는지 여부를 확인합니다.

매개변수
packageName String

반환 값
boolean 패키지가 설치된 것으로 보고되면 true입니다. 그렇지 않으면 false입니다.

생성 값
DeviceNotAvailableException

isPackageInstalled

public boolean isPackageInstalled (String packageName, 
                String userId)

기기에서 지정된 패키지 이름과 지정된 사용자 ID를 쿼리하여 해당 사용자에게 현재 설치되어 있는지 확인합니다.

매개변수
packageName String: 설치 여부를 확인하는 패키지입니다.

userId String: 패키지가 설치되어 있는지 확인하는 사용자 ID입니다. null인 경우 기본 사용자 0이 사용됩니다.

반환 값
boolean 패키지가 설치된 것으로 보고되면 true입니다. 그렇지 않으면 false입니다.

생성 값
DeviceNotAvailableException

isUserRunning

public boolean isUserRunning (int userId)

지정된 사용자가 실행 중인지 확인합니다.

매개변수
userId int

반환 값
boolean 사용자가 실행 중인 경우 true이고, 그 밖의 경우에는 false입니다.

생성 값
DeviceNotAvailableException

isUserSecondary

public boolean isUserSecondary (int userId)

지정된 사용자가 플래그에 따라 보조 사용자인지 여부를 반환합니다.

매개변수
userId int

반환 값
boolean 사용자가 보조 사용자인 경우 true이고, 그렇지 않으면 false입니다.

생성 값
DeviceNotAvailableException

isUserVisible

public boolean isUserVisible (int userId)

지정된 사용자가 표시되는지 확인합니다.

'표시된' 사용자는 '인간' 사용자와 상호작용하고 있으므로 활동을 실행할 수 있는 사용자입니다 (일반적으로 기본 디스플레이에서).

매개변수
userId int

반환 값
boolean

생성 값
DeviceNotAvailableException

isUserVisibleOnDisplay

public boolean isUserVisibleOnDisplay (int userId, 
                int displayId)

지정된 사용자가 지정된 디스플레이에 표시되는지 확인합니다.

'표시된' 사용자는 '인간' 사용자와 상호작용하고 있으므로 해당 디스플레이에서 활동을 실행할 수 있는 사용자입니다.

매개변수
userId int

displayId int

반환 값
boolean

생성 값
DeviceNotAvailableException

isVisibleBackgroundUsersOnDefaultDisplaySupported

public boolean isVisibleBackgroundUsersOnDefaultDisplaySupported ()

기기에서 사용자가 ERROR(/java.android.view.Display#DEFAULT_DISPLAY)의 백그라운드에서 표시되도록 허용할지 여부를 반환합니다.

이 경우 startVisibleBackgroundUser(int, int, boolean)를 호출하여 listDisplayIdsForStartingVisibleBackgroundUsers()에서 반환된 디스플레이 (ERROR(/java.android.view.Display#DEFAULT_DISPLAY) 포함)를 전달할 수 있습니다.

반환 값
boolean

생성 값
DeviceNotAvailableException

isVisibleBackgroundUsersSupported

public boolean isVisibleBackgroundUsersSupported ()

기기에서 사용자가 백그라운드에서 표시되도록 허용할지 여부를 반환합니다.

지원한다면 startVisibleBackgroundUser(int, int, boolean)를 호출하여 listDisplayIdsForStartingVisibleBackgroundUsers()에서 반환된 디스플레이를 전달할 수 있습니다.

반환 값
boolean

생성 값
DeviceNotAvailableException

listDisplayIds

public  listDisplayIds ()

'dumpsys SurfaceFlinger'에서 보고한 대로 기기에서 사용 가능한 디스플레이 ID 목록을 수집합니다.

반환 값
디스플레이 목록입니다. 기본값은 항상 기본 디스플레이 0을 반환합니다.

생성 값
DeviceNotAvailableException

listDisplayIdsForStartingVisibleBackgroundUsers

public  listDisplayIdsForStartingVisibleBackgroundUsers ()

start a user visible in the background에 사용할 수 있는 디스플레이 목록을 가져옵니다.

반환 값

생성 값
DeviceNotAvailableException

listUsers

public  listUsers ()

기기의 사용자 목록을 가져옵니다. 기기의 출력이 예상과 다르면 DeviceRuntimeException이 발생합니다.

반환 값
사용자 ID 목록입니다.

생성 값
DeviceNotAvailableException

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를 반환합니다.

생성 값
DeviceNotAvailableException

removeOwners

public void removeOwners ()

최선을 다해 기존의 모든 기기 프로필 소유자를 삭제합니다.

생성 값
DeviceNotAvailableException

removeUser

public boolean removeUser (int userId)

기기에서 특정 사용자를 삭제합니다.

매개변수
userId int: 삭제할 사용자

반환 값
boolean 사용자를 삭제하는 데 성공하면 true를 반환하고 그렇지 않으면 false를 반환합니다.

생성 값
DeviceNotAvailableException

setDeviceOwner

public boolean setDeviceOwner (String componentName, 
                int userId)

특정 사용자의 기기 관리자 구성요소를 기기 소유자로 설정합니다.

매개변수
componentName String: 기기 관리자가 기기 소유자가 됩니다.

userId int: 기기 소유자가 거주하는 사용자의

반환 값
boolean 성공하면 true를 반환하고 그렇지 않으면 false를 반환합니다.

생성 값
DeviceNotAvailableException

setSetting

public void setSetting (String namespace, 
                String key, 
                String value)

setSetting(int, String, String, String)를 참조하고 시스템 사용자에 대해 실행합니다.

매개변수
namespace String

key String

value String

생성 값
DeviceNotAvailableException

setSetting

public void setSetting (int userId, 
                String namespace, 
                String key, 
                String value)

특정 사용자의 네임스페이스에 설정 값을 추가합니다. 일부 설정은 재부팅 후에만 사용할 수 있습니다. 네임스페이스는 {"system", "secure", "global"} 중 하나여야 합니다.

매개변수
userId int

namespace String

key String

value String

생성 값
DeviceNotAvailableException

shutdownMicrodroid

public void shutdownMicrodroid (ITestDevice microdroidDevice)

microdroid 기기(있는 경우)를 종료합니다.

매개변수
microdroidDevice ITestDevice

생성 값
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

시작 사용자

public boolean startUser (int userId)

현재 중지된 경우 백그라운드에서 지정된 사용자를 시작합니다. 사용자가 이미 백그라운드에서 실행 중이면 이 메서드는 NOOP입니다.

매개변수
userId int: 백그라운드에서 시작할 사용자입니다.

반환 값
boolean 사용자가 백그라운드에서 성공적으로 시작된 경우 true입니다.

생성 값
DeviceNotAvailableException

startUser

public boolean startUser (int userId, 
                boolean waitFlag)

현재 중지된 경우 백그라운드에서 지정된 사용자를 시작합니다. 사용자가 이미 백그라운드에서 실행 중인 경우 이 메서드는 NOOP입니다. 작업이 적용될 때까지 기다리는 추가 플래그를 제공할 수 있습니다.

매개변수
userId int: 백그라운드에서 시작할 사용자입니다.

waitFlag boolean: 사용자가 시작되고 잠금 해제될 때까지 명령어가 대기합니다.

반환 값
boolean 사용자가 백그라운드에서 성공적으로 시작된 경우 true입니다.

생성 값
DeviceNotAvailableException

startVisibleBackgroundUser

public boolean startVisibleBackgroundUser (int userId, 
                int displayId, 
                boolean waitFlag)

지정된 디스플레이에 표시되도록 백그라운드에서 지정된 사용자를 시작합니다 (즉, 사용자가 해당 디스플레이에서 활동을 실행할 수 있음).

참고: 이 명령어는 사용자가 존재하는지, 디스플레이를 사용할 수 있는지, device supports such feature 등을 확인하지 않습니다.

매개변수
userId int: 백그라운드에서 시작할 사용자입니다.

displayId int: 사용자가 표시할 시작 표시

waitFlag boolean: 사용자가 시작되고 잠금 해제될 때까지 명령어가 대기합니다.

반환 값
boolean true: 사용자가 백그라운드에서 성공적으로 표시된 경우

생성 값
DeviceNotAvailableException

중지 사용자

public boolean stopUser (int userId, 
                boolean waitFlag, 
                boolean forceFlag)

지정된 사용자를 중지합니다. 작업이 적용될 때까지 기다리고 사용자를 강제 종료하는 추가 플래그를 제공할 수 있습니다. 현재 사용자와 시스템 사용자는 중지할 수 없습니다.

매개변수
userId int: 중지할 사용자입니다.

waitFlag boolean: 사용자가 중지될 때까지 명령어를 대기시킵니다.

forceFlag boolean: 사용자를 강제 종료합니다.

반환 값
boolean 사용자가 중지된 경우 true입니다.

생성 값
DeviceNotAvailableException

stopUser

public boolean stopUser (int userId)

지정된 사용자를 중지합니다. 사용자가 이미 중지된 경우 이 메서드는 NOOP입니다. 현재 사용자와 시스템 사용자는 중지할 수 없습니다.

매개변수
userId int: 중지할 사용자입니다.

반환 값
boolean 사용자가 중지된 경우 true입니다.

생성 값
DeviceNotAvailableException

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).

매개변수
userId int

반환 값
boolean 새 userId가 userId 제공업체와 일치하는 경우 true입니다. 그렇지 않으면 false입니다.

생성 값
DeviceNotAvailableException

switchUser

public boolean switchUser (int userId, 
                long timeout)

제공된 제한 시간을 기한으로 다른 userId로 전환합니다. 사용자 변경이 완료된 후 키가드 사용 중지를 시도합니다.

매개변수
userId int

timeout long: switch-user 실패에 대해 false를 반환하기 전에 기다립니다.

반환 값
boolean 새 userId가 userId 제공업체와 일치하는 경우 true입니다. 그렇지 않으면 false입니다.

생성 값
DeviceNotAvailableException

takeBugreport

public Bugreport takeBugreport ()

버그 신고를 가져와 처리하기 위해 Bugreport 객체 내에서 반환합니다. 문제가 있는 경우 null을 반환합니다. Bugreport 객체에서 참조된 파일은 Bugreport.close()를 통해 정리해야 합니다.

반환 값
Bugreport

uninstallPackage

public String uninstallPackage (String packageName)

기기에서 Android 패키지를 제거합니다.

매개변수
packageName String: 제거할 Android 패키지입니다.

반환 값
String 오류 코드가 있는 String 또는 성공한 경우 null

생성 값
DeviceNotAvailableException

uninstallPackageForUser

public String uninstallPackageForUser (String packageName, 
                int userId)

특정 사용자의 기기에서 Android 패키지를 제거합니다.

매개변수
packageName String: 제거할 Android 패키지입니다.

userId int: 제거할 정수 사용자 ID입니다.

반환 값
String 오류 코드가 있는 String 또는 성공한 경우 null

생성 값
DeviceNotAvailableException

Snapuserd 대기 중

public void waitForSnapuserd (SnapuserdWaitPhase currentPhase)

매개변수
currentPhase SnapuserdWaitPhase

생성 값
DeviceNotAvailableException

보호된 메서드

createParser

protected AaptParser createParser (File appFile)

매개변수
appFile File

반환 값
AaptParser

doAdbReboot

protected void doAdbReboot (NativeDevice.RebootMode rebootMode, 
                String reason)

adb 재부팅을 실행합니다.

매개변수
rebootMode NativeDevice.RebootMode: 이 재부팅의 모드입니다.

reason String: 이 재부팅에 관한 정보입니다.

생성 값
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getBugreportInternal

protected InputStreamSource getBugreportInternal ()

반환 값
InputStreamSource

getBugreportzInternal

protected File getBugreportzInternal ()

bugreportz ZIP 파일을 ERROR(/File)로 가져오는 내부 도우미 메서드입니다.

반환 값
File

getCheckNewUserSleep

protected long getCheckNewUserSleep ()

테스트를 위해 노출됩니다.

반환 값
long

getHostCurrentTime

protected long getHostCurrentTime ()

테스트용으로 노출됨

반환 값
long

prePostBootSetup

protected void prePostBootSetup ()

각 기기 유형 (AndroidNativeDevice, TestDevice)이 특정 부팅 후 설정에 대해 이 메서드를 재정의할 수 있습니다.

생성 값
DeviceNotAvailableException