จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ

อุปกรณ์ทดสอบ

public class TestDevice
extends NativeDevice

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


การใช้งาน ITestDevice สำหรับอุปกรณ์ Android แบบเต็มสแต็ก

สรุป

คลาสที่ซ้อนกัน

class TestDevice.MicrodroidBuilder

ตัวสร้างที่ใช้สร้าง Microdroid TestDevice

ทุ่งนา

public static final String DISMISS_KEYGUARD_CMD

คำสั่งที่ใช้ปิดคีย์การ์ดได้

ผู้สร้างสาธารณะ

TestDevice (IDevice device, IDeviceStateMonitor stateMonitor, IDeviceMonitor allocationMonitor)

วิธีการสาธารณะ

boolean clearErrorDialogs ()

พยายามยกเลิกกล่องโต้ตอบข้อผิดพลาดที่แสดงอยู่ใน UI ของอุปกรณ์ในปัจจุบัน

int createUser (String name)

สร้างผู้ใช้ด้วยชื่อที่กำหนดและแฟล็กเริ่มต้น 0

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

สร้างผู้ใช้ด้วยชื่อที่กำหนดและแฟล็กที่ให้มา

int createUserNoThrow (String name)

สร้างผู้ใช้ด้วยชื่อที่กำหนดและแฟล็กเริ่มต้น 0

void disableKeyguard ()

ความพยายามที่จะปิดการใช้งานคีย์การ์ด

boolean doesFileExist (String deviceFilePath)

วิธี Helper เพื่อตรวจสอบว่าไฟล์ในอุปกรณ์มีอยู่หรือไม่

boolean doesFileExist (String deviceFilePath, int userId)

วิธี Helper เพื่อตรวจสอบว่าไฟล์ในอุปกรณ์มีอยู่สำหรับผู้ใช้ที่กำหนดหรือไม่

File dumpHeap (String process, String devicePath)

พยายามดัมพ์ฮีพจาก system_server

getActiveApexes ()

ดึงข้อมูลเกี่ยวกับ APEX ที่เปิดใช้งานบนอุปกรณ์

getAllSettings (String namespace)

ส่งกลับคู่ค่าคีย์ของเนมสเปซที่ร้องขอ

String getAndroidId (int userId)

ค้นหาและส่งคืน android-id ที่เชื่อมโยงกับ userId หากไม่พบจะเป็นโมฆะ

getAndroidIds ()

สร้างแผนที่รหัส Android ที่พบว่าตรงกับรหัสผู้ใช้

PackageInfo getAppPackageInfo (String packageName)

ดึงข้อมูลเกี่ยวกับแพ็คเกจที่ติดตั้งบนอุปกรณ์

getAppPackageInfos ()

ดึงข้อมูลของแพ็คเกจที่ติดตั้งบนอุปกรณ์

DeviceFoldableState getCurrentFoldableState ()

ส่งกลับสถานะปัจจุบันที่พับได้ของอุปกรณ์หรือ null หากมีปัญหาเกิดขึ้น

int getCurrentUser ()

ส่งคืน ID ของผู้ใช้ที่กำลังทำงานอยู่ในปัจจุบัน

getFoldableStates ()

ส่งคืนรายการสถานะแบบพับได้บนอุปกรณ์

getInstalledPackageNames ()

เรียกชื่อแพ็คเกจแอปพลิเคชันที่มีอยู่ในอุปกรณ์

KeyguardControllerState getKeyguardState ()

ส่งคืนอ็อบเจ็กต์เพื่อรับสถานะปัจจุบันของคีย์การ์ดหรือค่า null หากไม่ได้รับการสนับสนุน

getMainlineModuleInfo ()

รับข้อมูลเกี่ยวกับโมดูล mainline ที่ติดตั้งบนอุปกรณ์

int getMaxNumberOfRunningUsersSupported ()

รับจำนวนผู้ใช้สูงสุดที่รองรับการทำงานพร้อมกัน

int getMaxNumberOfUsersSupported ()

รับจำนวนผู้ใช้ที่รองรับสูงสุด

String getMicrodroidCID ()
Integer getPrimaryUserId ()

ส่งคืน ID ผู้ใช้หลัก

InputStreamSource getScreenshot ()

จับภาพหน้าจอจากอุปกรณ์

InputStreamSource getScreenshot (String format, boolean rescale)

จับภาพหน้าจอจากอุปกรณ์

InputStreamSource getScreenshot (String format)

จับภาพหน้าจอจากอุปกรณ์

InputStreamSource getScreenshot (long displayId)

จับภาพหน้าจอจากอุปกรณ์ที่ระบุ ID ที่แสดง

String getSetting (String namespace, String key)

ดู getSetting(int, String, String) และดำเนินการกับผู้ใช้ระบบ

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

ส่งกลับค่าของการตั้งค่าที่ร้องขอ

getUninstallablePackageNames ()

ดึงชื่อแพ็คเกจแอปพลิเคชันที่สามารถถอนการติดตั้งได้

int getUserFlags (int userId)

ค้นหาและส่งคืนแฟล็กของผู้ใช้ที่กำหนด

getUserInfos ()

รับ Map of useId ไปยัง UserInfo บนอุปกรณ์

int getUserSerialNumber (int userId)

ส่งคืนหมายเลขซีเรียลที่เกี่ยวข้องกับ userId หากพบ -10000 ในกรณีอื่น ๆ

boolean hasFeature (String feature)

ตรวจสอบว่ามีคุณสมบัติบนอุปกรณ์หรือไม่

String installPackage (File packageFile, boolean reinstall, String... extraArgs)

ติดตั้งแพ็คเกจ Android บนอุปกรณ์

String installPackage (File packageFile, File certFile, boolean reinstall, String... extraArgs)

ติดตั้งแพ็คเกจ Android บนอุปกรณ์

String installPackage (File packageFile, boolean reinstall, boolean grantPermissions, 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) installPackages ( packageFiles, boolean reinstall, String... extraArgs)

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

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

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

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

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

boolean isAppEnumerationSupported ()

ตรวจสอบว่าแพลตฟอร์มบนอุปกรณ์รองรับการแจงนับแอพหรือไม่

boolean isMultiUserSupported ()

กำหนดว่ารองรับผู้ใช้หลายคนหรือไม่

boolean isPackageInstalled (String packageName)

สอบถามอุปกรณ์สำหรับชื่อแพ็คเกจที่กำหนดเพื่อตรวจสอบว่าติดตั้งอยู่หรือไม่

boolean isPackageInstalled (String packageName, String userId)

สอบถามอุปกรณ์สำหรับชื่อแพ็คเกจที่กำหนดและระบุรหัสผู้ใช้เพื่อตรวจสอบว่าอุปกรณ์นั้นติดตั้งอยู่หรือไม่สำหรับผู้ใช้นั้น

boolean isUserRunning (int userId)

ตรวจสอบว่าผู้ใช้รายหนึ่งกำลังทำงานอยู่หรือไม่

boolean isUserSecondary (int userId)

ส่งคืนว่าผู้ใช้ที่ระบุเป็นผู้ใช้รองตามแฟล็กหรือไม่

listDisplayIds ()

รวบรวมรายการ ID จอแสดงผลที่พร้อมใช้งานบนอุปกรณ์ตามที่รายงานโดย "dumpsys SurfaceFlinger"

listUsers ()

รับรายชื่อผู้ใช้บนอุปกรณ์

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 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 อื่นโดยมีระยะหมดเวลาที่ระบุเป็นกำหนดเวลา

String uninstallPackage (String packageName)

ถอนการติดตั้งแพ็คเกจ Android จากอุปกรณ์

String uninstallPackageForUser (String packageName, int userId)

ถอนการติดตั้งแพ็คเกจ Android จากอุปกรณ์สำหรับผู้ใช้ที่กำหนด

วิธีการป้องกัน

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

ทำการรีบูต adb

long getCheckNewUserSleep ()

เปิดเผยสำหรับการทดสอบ

long getHostCurrentTime ()

เปิดเผยสำหรับการทดสอบ

void prePostBootSetup ()

อนุญาตให้อุปกรณ์แต่ละประเภท (AndroidNativeDevice, TestDevice) แทนที่วิธีนี้สำหรับการตั้งค่าการบูตเฉพาะ

ทุ่งนา

DISMISS_KEYGUARD_CMD

public static final String DISMISS_KEYGUARD_CMD

คำสั่งที่ใช้ปิดคีย์การ์ดได้

ผู้สร้างสาธารณะ

อุปกรณ์ทดสอบ

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

วิธีการสาธารณะ

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)

สร้างผู้ใช้ด้วยชื่อที่กำหนดและแฟล็กที่ให้มา

พารามิเตอร์
name String : ของผู้ใช้ที่จะสร้างบนอุปกรณ์

guest boolean : เปิดใช้งานการตั้งค่าสถานะผู้ใช้ --guest ระหว่างการสร้าง

ephemeral boolean : เปิดใช้งานการตั้งค่าสถานะผู้ใช้ --ชั่วคราว ระหว่างการสร้าง

คืนสินค้า
int id ของผู้ใช้ที่สร้างขึ้น

ขว้าง
DeviceNotAvailableException

createUserNoThrow

public int createUserNoThrow (String name)

สร้างผู้ใช้ด้วยชื่อที่กำหนดและแฟล็กเริ่มต้น 0

พารามิเตอร์
name String : ของผู้ใช้ที่จะสร้างบนอุปกรณ์

คืนสินค้า
int สร้างจำนวนเต็มสำหรับรหัสผู้ใช้หรือ -1 สำหรับข้อผิดพลาด

ขว้าง
DeviceNotAvailableException

ปิดการใช้งานKeyguard

public void disableKeyguard ()

ความพยายามที่จะปิดการใช้งานคีย์การ์ด

ขั้นแรกให้รอจนกว่าการส่งอินพุตจะพร้อม สิ่งนี้จะเกิดขึ้นในช่วงเวลาเดียวกับที่อุปกรณ์รายงาน BOOT_COMPLETE ซึ่งดูเหมือนจะไม่พร้อมกัน เนื่องจากการใช้เฟรมเวิร์กในปัจจุบันมีสภาวะการแข่งขันเป็นครั้งคราว จากนั้นคำสั่งจะถูกส่งไปยังปิดคีย์การ์ด (ใช้งานได้กับคีย์การ์ดที่ไม่ปลอดภัยเท่านั้น)

ขว้าง
DeviceNotAvailableException

ไม่FileExist

public boolean doesFileExist (String deviceFilePath)

วิธี Helper เพื่อตรวจสอบว่าไฟล์ในอุปกรณ์มีอยู่หรือไม่

พารามิเตอร์
deviceFilePath String : เส้นทางที่แน่นอนของไฟล์บนอุปกรณ์ที่จะตรวจสอบ

คืนสินค้า
boolean true ถ้ามีไฟล์อยู่ false มิฉะนั้น

ขว้าง
DeviceNotAvailableException

ไม่FileExist

public boolean doesFileExist (String deviceFilePath, 
                int userId)

วิธี Helper เพื่อตรวจสอบว่าไฟล์ในอุปกรณ์มีอยู่สำหรับผู้ใช้ที่กำหนดหรือไม่

พารามิเตอร์
deviceFilePath String : เส้นทางที่แน่นอนของไฟล์บนอุปกรณ์ที่จะตรวจสอบ

userId int : รหัสผู้ใช้ที่ใช้ตรวจสอบการมีอยู่ของไฟล์

คืนสินค้า
boolean true ถ้ามีไฟล์อยู่ false มิฉะนั้น

ขว้าง
DeviceNotAvailableException

dumpHeap

public File dumpHeap (String process, 
                String devicePath)

พยายามดัมพ์ฮีพจาก system_server เป็นความรับผิดชอบของผู้โทรในการล้างไฟล์ที่ทิ้ง

พารามิเตอร์
process String : ชื่อของกระบวนการของอุปกรณ์ที่จะถ่ายโอนข้อมูล

devicePath String : เส้นทางบนอุปกรณ์ที่จะวางดัมพ์ จะต้องเป็นสถานที่ที่ได้รับอนุญาต

คืนสินค้า
File ERROR(/File) ที่มีรายงาน Null ถ้าบางสิ่งบางอย่างล้มเหลว

ขว้าง
DeviceNotAvailableException

getActiveApexes

public  getActiveApexes ()

ดึงข้อมูลเกี่ยวกับ APEX ที่เปิดใช้งานบนอุปกรณ์

คืนสินค้า
ERROR(/Set) ของ ApexInfo ที่เปิดใช้งานบนอุปกรณ์ในปัจจุบัน

ขว้าง
DeviceNotAvailableException

getAllSettings

public  getAllSettings (String namespace)

ส่งกลับคู่ค่าคีย์ของเนมสเปซที่ร้องขอ

พารามิเตอร์
namespace String : ต้องเป็นหนึ่งใน {"system", "secure", "global"}

คืนสินค้า
แผนที่ของคู่ค่าคีย์ Null หากไม่รองรับเนมสเปซ

ขว้าง
DeviceNotAvailableException

getAndroidId

public String getAndroidId (int userId)

ค้นหาและส่งคืน android-id ที่เชื่อมโยงกับ userId หากไม่พบจะเป็นโมฆะ

พารามิเตอร์
userId int

คืนสินค้า
String

ขว้าง
DeviceNotAvailableException

getAndroidIds

public  getAndroidIds ()

สร้างแผนที่รหัส Android ที่พบว่าตรงกับรหัสผู้ใช้ ไม่มีการประกันว่า ID ผู้ใช้แต่ละรายจะพบรหัส Android ที่เชื่อมโยงกับฟังก์ชันนี้ ดังนั้น ID ผู้ใช้บางตัวอาจตรงกับค่าว่าง

คืนสินค้า
พบแผนที่ของรหัส Android ที่ตรงกับรหัสผู้ใช้

ขว้าง
DeviceNotAvailableException

getAppPackageInfo

public PackageInfo getAppPackageInfo (String packageName)

ดึงข้อมูลเกี่ยวกับแพ็คเกจที่ติดตั้งบนอุปกรณ์

พารามิเตอร์
packageName String

คืนสินค้า
PackageInfo PackageInfo หรือ null หากไม่สามารถดึงข้อมูลได้

ขว้าง
DeviceNotAvailableException

getAppPackageInfos

public  getAppPackageInfos ()

ดึงข้อมูลของแพ็คเกจที่ติดตั้งบนอุปกรณ์

คืนสินค้า
ERROR(/List) ของ PackageInfo ที่ติดตั้งบนอุปกรณ์

ขว้าง
DeviceNotAvailableException

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

เรียกชื่อแพ็คเกจแอปพลิเคชันที่มีอยู่ในอุปกรณ์

คืนสินค้า
ERROR(/Set) ของชื่อแพ็คเกจ String ที่ติดตั้งบนอุปกรณ์ในปัจจุบัน

ขว้าง
DeviceNotAvailableException

getKeyguardState

public KeyguardControllerState getKeyguardState ()

ส่งคืนอ็อบเจ็กต์เพื่อรับสถานะปัจจุบันของคีย์การ์ดหรือค่า null หากไม่ได้รับการสนับสนุน

คืนสินค้า
KeyguardControllerState KeyguardControllerState ที่มีสแน็ปช็อตของสถานะของคีย์การ์ดและคืนค่า Null หากไม่รองรับการสืบค้น Keyguard

ขว้าง
DeviceNotAvailableException

getMainlineModuleInfo

public  getMainlineModuleInfo ()

รับข้อมูลเกี่ยวกับโมดูล mainline ที่ติดตั้งบนอุปกรณ์

คืนสินค้า
ERROR(/Set) ของโมดูล String mainline ที่ติดตั้งอยู่ในอุปกรณ์ในปัจจุบัน

ขว้าง
DeviceNotAvailableException

getMaxNumberOfRunningUsersSupported

public int getMaxNumberOfRunningUsersSupported ()

รับจำนวนผู้ใช้สูงสุดที่รองรับการทำงานพร้อมกัน ค่าเริ่มต้นเป็น 0

คืนสินค้า
int จำนวนเต็มที่ระบุจำนวนผู้ใช้ที่รันพร้อมกัน

ขว้าง
DeviceNotAvailableException

getMaxNumberOfUsers รองรับ

public int getMaxNumberOfUsersSupported ()

รับจำนวนผู้ใช้ที่รองรับสูงสุด ค่าเริ่มต้นเป็น 0

คืนสินค้า
int จำนวนเต็มระบุจำนวนผู้ใช้ที่รองรับ

ขว้าง
DeviceNotAvailableException

getMicrodroidCID

public String getMicrodroidCID ()

คืนสินค้า
String ส่งกลับ CID ของ microdroid vm หาก TestDevice ไม่ใช่ microdroid ให้คืนค่า null

getPrimaryUserId

public Integer getPrimaryUserId ()

ส่งคืน ID ผู้ใช้หลัก

คืนสินค้า
Integer userId ของผู้ใช้หลัก หากมี และ null หากไม่มีผู้ใช้หลัก

ขว้าง
DeviceNotAvailableException

รับสกรีนช็อต

public InputStreamSource getScreenshot ()

จับภาพหน้าจอจากอุปกรณ์

คืนสินค้า
InputStreamSource InputStreamSource ของภาพหน้าจอในรูปแบบ png หรือ null หากภาพหน้าจอไม่สำเร็จ

ขว้าง
DeviceNotAvailableException

รับสกรีนช็อต

public InputStreamSource getScreenshot (String format, 
                boolean rescale)

จับภาพหน้าจอจากอุปกรณ์ แนะนำให้ใช้ getScreenshot(String) แทนด้วยการเข้ารหัส JPEG สำหรับขนาดที่เล็กกว่า

พารามิเตอร์
format String : รองรับ PNG, JPEG

rescale boolean : หากภาพหน้าจอควรปรับขนาดเพื่อลดขนาดของภาพที่ได้

คืนสินค้า
InputStreamSource InputStreamSource ของภาพหน้าจอในรูปแบบ หรือ null หากภาพหน้าจอไม่สำเร็จ

ขว้าง
DeviceNotAvailableException

รับสกรีนช็อต

public InputStreamSource getScreenshot (String format)

จับภาพหน้าจอจากอุปกรณ์ แนะนำให้ใช้ getScreenshot(รูปแบบ) แทนด้วยการเข้ารหัส JPEG สำหรับขนาดที่เล็กกว่า

พารามิเตอร์
format String : รองรับ PNG, JPEG

คืนสินค้า
InputStreamSource InputStreamSource ของภาพหน้าจอในรูปแบบ หรือ null หากภาพหน้าจอไม่สำเร็จ

ขว้าง
DeviceNotAvailableException

รับสกรีนช็อต

public InputStreamSource getScreenshot (long displayId)

จับภาพหน้าจอจากอุปกรณ์ที่ระบุ ID ที่แสดง รูปแบบเป็น PNG

สิ่งที่ต้องทำ: ขยายการใช้งานด้านบนเพื่อรองรับ 'รูปแบบ' และ 'การปรับขนาด'

พารามิเตอร์
displayId long : รหัสที่แสดงของหน้าจอเพื่อรับภาพหน้าจอ

คืนสินค้า
InputStreamSource InputStreamSource ของภาพหน้าจอในรูปแบบ หรือ null หากภาพหน้าจอไม่สำเร็จ

ขว้าง
DeviceNotAvailableException

รับการตั้งค่า

public String getSetting (String namespace, 
                String key)

ดู getSetting(int, String, String) และดำเนินการกับผู้ใช้ระบบ

พารามิเตอร์
namespace String

key String

คืนสินค้า
String

ขว้าง
DeviceNotAvailableException

รับการตั้งค่า

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

ส่งกลับค่าของการตั้งค่าที่ร้องขอ เนมสเปซต้องเป็นหนึ่งใน: {"system", "secure", "global"}

พารามิเตอร์
userId int

namespace String

key String

คืนสินค้า
String ค่าที่เกี่ยวข้องกับเนมสเปซ:คีย์ของผู้ใช้ Null หากไม่พบ

ขว้าง
DeviceNotAvailableException

getUninstallablePackageNames

public  getUninstallablePackageNames ()

ดึงชื่อแพ็คเกจแอปพลิเคชันที่สามารถถอนการติดตั้งได้ ปัจจุบันนี้กำหนดเป็นแพ็คเกจที่ไม่ใช่ระบบ และแพ็คเกจระบบที่อัพเดต

คืนสินค้า
ERROR(/Set) ของชื่อแพ็คเกจ String ที่ถอนการติดตั้งได้ซึ่งติดตั้งอยู่ในอุปกรณ์ในปัจจุบัน

ขว้าง
DeviceNotAvailableException

getUserFlags

public int getUserFlags (int userId)

ค้นหาและส่งคืนแฟล็กของผู้ใช้ที่กำหนด แฟล็กถูกกำหนดในคลาส "android.content.pm.UserInfo" ในโครงการโอเพ่นซอร์ส Android

พารามิเตอร์
userId int

คืนสินค้า
int แฟล็กที่เกี่ยวข้องกับ userId ที่ระบุหากพบ -10000 ในกรณีอื่นใด

ขว้าง
DeviceNotAvailableException

getUserInfos

public  getUserInfos ()

รับ Map of useId ไปยัง UserInfo บนอุปกรณ์ จะโยน DeviceRuntimeException หากเอาต์พุตจากอุปกรณ์ไม่เป็นไปตามที่คาดไว้

คืนสินค้า
รายการของอ็อบเจ็กต์ UserInfo

ขว้าง
DeviceNotAvailableException

getUserSerialNumber

public int getUserSerialNumber (int userId)

ส่งคืนหมายเลขซีเรียลที่เกี่ยวข้องกับ userId หากพบ -10000 ในกรณีอื่น ๆ

พารามิเตอร์
userId int

คืนสินค้า
int

ขว้าง
DeviceNotAvailableException

มีคุณสมบัติ

public boolean hasFeature (String feature)

ตรวจสอบว่ามีคุณสมบัติบนอุปกรณ์หรือไม่

พารามิเตอร์
feature String : รูปแบบใดควรเป็น "feature: " หรือ " " โดยตรง.

คืนสินค้า
boolean จริง หากพบคุณสมบัติ มิฉะนั้น จะเป็นเท็จ

ขว้าง
DeviceNotAvailableException

ติดตั้งแพ็คเกจ

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

ติดตั้งแพ็คเกจ

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

ติดตั้งแพ็คเกจ

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

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, 
                boolean grantPermissions, 
                String... extraArgs)

พารามิเตอร์
remoteApkPaths

reinstall boolean

grantPermissions boolean

extraArgs String

คืนสินค้า
String

ขว้าง
DeviceNotAvailableException

installRemotePackages

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

พารามิเตอร์
remoteApkPaths

reinstall boolean

extraArgs String

คืนสินค้า
String

ขว้าง
DeviceNotAvailableException

isAppEnumerationได้รับการสนับสนุน

public boolean isAppEnumerationSupported ()

ตรวจสอบว่าแพลตฟอร์มบนอุปกรณ์รองรับการแจงนับแอพหรือไม่

คืนสินค้า
boolean จริงหากรองรับการแจงนับแอป มิฉะนั้นจะเป็นเท็จ

ขว้าง
DeviceNotAvailableException

isMultiUserSupported

public boolean isMultiUserSupported ()

กำหนดว่ารองรับผู้ใช้หลายคนหรือไม่

คืนสินค้า
boolean จริงหากรองรับผู้ใช้หลายคน มิฉะนั้นจะเป็นเท็จ

ขว้าง
DeviceNotAvailableException

isPackageInstalled

public boolean isPackageInstalled (String packageName)

สอบถามอุปกรณ์สำหรับชื่อแพ็คเกจที่กำหนดเพื่อตรวจสอบว่าติดตั้งอยู่หรือไม่

พารามิเตอร์
packageName String

คืนสินค้า
boolean เป็นจริงหากแพ็คเกจถูกรายงานว่าติดตั้งแล้ว เท็จเป็นอย่างอื่น

ขว้าง
DeviceNotAvailableException

isPackageInstalled

public boolean isPackageInstalled (String packageName, 
                String userId)

สอบถามอุปกรณ์สำหรับชื่อแพ็คเกจที่กำหนดและระบุรหัสผู้ใช้เพื่อตรวจสอบว่าอุปกรณ์นั้นติดตั้งอยู่หรือไม่สำหรับผู้ใช้นั้น

พารามิเตอร์
packageName String : แพ็คเกจที่เรากำลังตรวจสอบว่าได้ติดตั้งไว้หรือไม่

userId String : ID ผู้ใช้ที่เรากำลังตรวจสอบการติดตั้งแพ็คเกจ หากเป็นโมฆะ ระบบจะใช้ศูนย์ผู้ใช้หลัก

คืนสินค้า
boolean เป็นจริงหากแพ็คเกจถูกรายงานว่าติดตั้งแล้ว เท็จเป็นอย่างอื่น

ขว้าง
DeviceNotAvailableException

isUserRunning

public boolean isUserRunning (int userId)

ตรวจสอบว่าผู้ใช้รายหนึ่งกำลังทำงานอยู่หรือไม่

พารามิเตอร์
userId int

คืนสินค้า
boolean True หากผู้ใช้กำลังทำงาน เท็จในทุกกรณี

ขว้าง
DeviceNotAvailableException

isUserSecondary

public boolean isUserSecondary (int userId)

ส่งคืนว่าผู้ใช้ที่ระบุเป็นผู้ใช้รองตามแฟล็กหรือไม่

พารามิเตอร์
userId int

คืนสินค้า
boolean จริงถ้าผู้ใช้เป็นรอง มิฉะนั้น เท็จ

ขว้าง
DeviceNotAvailableException

listDisplayIds

public  listDisplayIds ()

รวบรวมรายการ ID จอแสดงผลที่พร้อมใช้งานบนอุปกรณ์ตามที่รายงานโดย "dumpsys SurfaceFlinger"

คืนสินค้า
รายการแสดงผล ค่าเริ่มต้นจะคืนค่าการแสดงผลเริ่มต้นเป็น 0 เสมอ

ขว้าง
DeviceNotAvailableException

รายการผู้ใช้

public  listUsers ()

รับรายชื่อผู้ใช้บนอุปกรณ์ จะโยน DeviceRuntimeException หากเอาต์พุตจากอุปกรณ์ไม่เป็นไปตามที่คาดไว้

คืนสินค้า
รายการรหัสผู้ใช้

ขว้าง
DeviceNotAvailableException

postInvocationTearDown

public void postInvocationTearDown (Throwable exception)

ขั้นตอนเพิ่มเติมสำหรับการล้างข้อมูลเฉพาะอุปกรณ์ที่จะดำเนินการหลังจากการเรียกใช้เสร็จสิ้น

พารามิเตอร์
exception Throwable : ถ้ามี ข้อยกเว้นขั้นสุดท้ายที่เกิดจากความล้มเหลวในการเรียกใช้

ลบผู้ดูแลระบบ

public boolean removeAdmin (String componentName, 
                int userId)

ลบผู้ดูแลระบบอุปกรณ์ที่กำหนดในผู้ใช้ที่กำหนดและคืนค่า true หากสำเร็จ มิฉะนั้น false

พารามิเตอร์
componentName String : ของผู้ดูแลระบบอุปกรณ์ที่จะลบ

userId int : ของผู้ใช้ที่ผู้ดูแลระบบอุปกรณ์อาศัยอยู่

คืนสินค้า
boolean จริงถ้ามันสำเร็จเท็จอย่างอื่น

ขว้าง
DeviceNotAvailableException

ลบเจ้าของ

public void removeOwners ()

ลบเจ้าของโปรไฟล์อุปกรณ์ที่มีอยู่ทั้งหมดด้วยความพยายามอย่างเต็มที่

ขว้าง
DeviceNotAvailableException

ลบUser

public boolean removeUser (int userId)

ลบผู้ใช้ที่กำหนดออกจากอุปกรณ์

พารามิเตอร์
userId int : ของผู้ใช้ที่จะลบ

คืนสินค้า
boolean จริง หากเราลบผู้ใช้ได้สำเร็จ มิฉะนั้น เท็จ

ขว้าง
DeviceNotAvailableException

setDeviceOwner

public boolean setDeviceOwner (String componentName, 
                int userId)

ตั้งค่าคอมโพเนนต์ผู้ดูแลระบบอุปกรณ์เป็นเจ้าของอุปกรณ์ในผู้ใช้ที่กำหนด

พารามิเตอร์
componentName String : ของผู้ดูแลอุปกรณ์ที่จะเป็นเจ้าของอุปกรณ์

userId int : ของผู้ใช้ที่เจ้าของอุปกรณ์อาศัยอยู่

คืนสินค้า
boolean จริงถ้ามันสำเร็จเท็จอย่างอื่น

ขว้าง
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

ปิดไมโครดรอยด์

public void shutdownMicrodroid (ITestDevice microdroidDevice)

ปิดอุปกรณ์ microdroid หากมี

พารามิเตอร์
microdroidDevice ITestDevice

ขว้าง
DeviceNotAvailableException

startUser

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

หยุดผู้ใช้

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

หยุดผู้ใช้ที่กำหนด เป็นไปได้ที่จะจัดให้มีแฟล็กพิเศษเพื่อรอให้การดำเนินการมีผล และบังคับให้ยุติผู้ใช้ ไม่สามารถหยุดผู้ใช้ปัจจุบันและผู้ใช้ระบบ

พารามิเตอร์
userId int : ของผู้ใช้ที่จะหยุด

waitFlag boolean : จะทำให้คำสั่งรอจนกว่าผู้ใช้จะหยุด

forceFlag boolean : จะบังคับให้หยุดผู้ใช้

คืนสินค้า
boolean true หากผู้ใช้หยุดทำงานสำเร็จ

ขว้าง
DeviceNotAvailableException

หยุดผู้ใช้

public boolean stopUser (int userId)

หยุดผู้ใช้ที่กำหนด หากผู้ใช้หยุดทำงานแล้ว วิธีนี้คือ NOOP ไม่สามารถหยุดผู้ใช้ปัจจุบันและผู้ใช้ระบบ

พารามิเตอร์
userId int : ของผู้ใช้ที่จะหยุด

คืนสินค้า
boolean true หากผู้ใช้หยุดทำงานสำเร็จ

ขว้าง
DeviceNotAvailableException

รองรับ Microdroid

public boolean supportsMicrodroid ()

ตรวจสอบเงื่อนไขเบื้องต้นเพื่อเรียกใช้ microdroid

คืนสินค้า
boolean คืนค่า จริง หากเป็นไปตามเงื่อนไขเบื้องต้น มิฉะนั้น จะเป็นเท็จ

รองรับ Microdroid

public boolean supportsMicrodroid (boolean protectedVm)

ตรวจสอบเงื่อนไขเบื้องต้นเพื่อเรียกใช้ microdroid

พารามิเตอร์
protectedVm boolean : จริง หาก microdroid ตั้งใจให้ทำงานบน VM ที่ได้รับการป้องกัน

คืนสินค้า
boolean คืนค่า จริง หากเป็นไปตามเงื่อนไขเบื้องต้น มิฉะนั้น จะเป็นเท็จ

เปลี่ยนผู้ใช้

public boolean switchUser (int userId)

สลับไปใช้ userId อื่นที่มีระยะหมดเวลาเริ่มต้น switchUser(int, long)

พารามิเตอร์
userId int

คืนสินค้า
boolean True ถ้า userId ใหม่ตรงกับผู้ให้บริการ userId เท็จเป็นอย่างอื่น

ขว้าง
DeviceNotAvailableException

เปลี่ยนผู้ใช้

public boolean switchUser (int userId, 
                long timeout)

เปลี่ยนไปใช้ userId อื่นโดยมีระยะหมดเวลาที่ระบุเป็นกำหนดเวลา พยายามปิดการใช้งานคีย์การ์ดหลังจากเปลี่ยนผู้ใช้สำเร็จ

พารามิเตอร์
userId int

timeout long : รอก่อนที่จะคืนค่าเท็จสำหรับผู้ใช้สวิตช์ล้มเหลว

คืนสินค้า
boolean True ถ้า userId ใหม่ตรงกับผู้ให้บริการ userId เท็จเป็นอย่างอื่น

ขว้าง
DeviceNotAvailableException

ถอนการติดตั้งแพ็คเกจ

public String uninstallPackage (String packageName)

ถอนการติดตั้งแพ็คเกจ Android จากอุปกรณ์

พารามิเตอร์
packageName String : แพ็คเกจ Android ที่จะถอนการติดตั้ง

คืนสินค้า
String String ที่มีรหัสข้อผิดพลาด หรือ null หากสำเร็จ

ขว้าง
DeviceNotAvailableException

ถอนการติดตั้งPackageForUser

public String uninstallPackageForUser (String packageName, 
                int userId)

ถอนการติดตั้งแพ็คเกจ Android จากอุปกรณ์สำหรับผู้ใช้ที่กำหนด

พารามิเตอร์
packageName String : แพ็คเกจ Android ที่จะถอนการติดตั้ง

userId int : ID ผู้ใช้จำนวนเต็มที่จะถอนการติดตั้ง

คืนสินค้า
String String ที่มีรหัสข้อผิดพลาด หรือ null หากสำเร็จ

ขว้าง
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 : สำหรับการรีบูตครั้งนี้

ขว้าง
DeviceNotAvailableException

getCheckNewUserSleep

protected long getCheckNewUserSleep ()

เปิดเผยสำหรับการทดสอบ

คืนสินค้า
long

getHostCurrentTime

protected long getHostCurrentTime ()

เปิดเผยสำหรับการทดสอบ

คืนสินค้า
long

prePostBootSetup

protected void prePostBootSetup ()

อนุญาตให้อุปกรณ์แต่ละประเภท (AndroidNativeDevice, TestDevice) แทนที่วิธีนี้สำหรับการตั้งค่าการบูตเฉพาะ

ขว้าง
DeviceNotAvailableException