Google cam kết thúc đẩy công bằng chủng tộc cho các cộng đồng Đen. Xem thế nào.
Trang này được dịch bởi Cloud Translation API.
Switch to English

Bản địa

public class NativeDevice
extends Object implements IManagedTestDevice

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


ITestDevice mặc định của thiết bị Android không đầy đủ ITestDevice .

Tóm lược

Các lớp lồng nhau

class NativeDevice.AdbAction

DeviceAction để chạy lệnh 'adb ....' của HĐH.

class NativeDevice.AdbShellAction

class NativeDevice.RebootDeviceAction

DeviceAction để khởi động lại một thiết bị.

Hằng số

int INVALID_USER_ID

Giá trị được trả về cho bất kỳ id người dùng không hợp lệ / không tìm thấy: UserHandle đã xác định giá trị -10000

long MAX_HOST_DEVICE_TIME_OFFSET

int MAX_RETRY_ATTEMPTS

số lần thử lại lệnh mặc định để thực hiện

Lĩnh vực

protected TestDeviceOptions mOptions

protected final IDeviceStateMonitor mStateMonitor

Nhà xây dựng công cộng

NativeDevice (IDevice device, IDeviceStateMonitor stateMonitor, IDeviceMonitor allocationMonitor)

Tạo một TestDevice .

Phương pháp công cộng

boolean checkApiLevelAgainstNextRelease (int strictMinLevel)

Kiểm tra xem một tính năng hiện có được hỗ trợ ở mức được hỗ trợ tối thiểu hay không.

boolean checkConnectivity ()

Kiểm tra xem thiết bị có kết nối mạng không.

boolean clearErrorDialogs ()

Cố gắng loại bỏ bất kỳ hộp thoại lỗi hiện đang hiển thị trên giao diện người dùng thiết bị.

void clearLastConnectedWifiNetwork ()

Xóa mạng wifi được kết nối lần cuối.

void clearLogcat ()

Xóa mọi dữ liệu logcat tích lũy.

boolean connectToWifiNetwork (String wifiSsid, String wifiPsk)

Kết nối với mạng wifi.

boolean connectToWifiNetwork (String wifiSsid, String wifiPsk, boolean scanSsid)

Kết nối với mạng wifi.

boolean connectToWifiNetworkIfNeeded (String wifiSsid, String wifiPsk, boolean scanSsid)

Một biến thể của connectToWifiNetwork(String, String) chỉ kết nối nếu thiết bị hiện không có kết nối mạng.

boolean connectToWifiNetworkIfNeeded (String wifiSsid, String wifiPsk)

Một biến thể của connectToWifiNetwork(String, String) chỉ kết nối nếu thiết bị hiện không có kết nối mạng.

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

Tạo người dùng với một tên cụ thể và các cờ được cung cấp

int createUser (String name)

Tạo người dùng với tên đã cho và cờ mặc định 0.

int createUserNoThrow (String name)

Tạo người dùng với tên đã cho và cờ mặc định 0.

void deleteFile (String deviceFilePath)

Phương pháp trợ giúp để xóa một tập tin hoặc thư mục trên thiết bị.

boolean disableAdbRoot ()

Tắt gốc adb.

void disableKeyguard ()

Nỗ lực vô hiệu hóa keyguard.

boolean disableNetworkMonitor ()

Vô hiệu hóa giám sát mạng trên thiết bị.

boolean disconnectFromWifi ()

Ngắt kết nối mạng wifi.

boolean doesFileExist (String deviceFilePath)

Phương pháp trợ giúp để xác định xem tập tin trên thiết bị có tồn tại không.

File dumpHeap (String process, String devicePath)

Cố gắng đổ đống từ máy chủ system_server.

boolean enableAdbRoot ()

Bật gốc adb.

boolean enableNetworkMonitor ()

Cho phép giám sát mạng trên thiết bị.

boolean encryptDevice (boolean inplace)

Mã hóa thiết bị.

String executeAdbCommand (String... cmdArgs)

Phương thức trợ giúp thực thi lệnh adb dưới dạng lệnh hệ thống.

CommandResult executeFastbootCommand (String... cmdArgs)

Phương thức trình trợ giúp thực thi lệnh fastboot dưới dạng lệnh hệ thống với thời gian chờ mặc định là 2 phút.

CommandResult executeFastbootCommand (long timeout, String... cmdArgs)

Phương thức trình trợ giúp thực thi lệnh fastboot dưới dạng lệnh hệ thống.

CommandResult executeLongFastbootCommand (String... cmdArgs)

Phương thức trình trợ giúp thực thi lệnh fastboot chạy dài như một lệnh hệ thống.

String executeShellCommand (String command)

Phương thức trình trợ giúp thực thi lệnh shell adb và trả về đầu ra dưới dạng String .

void executeShellCommand (String command, IShellOutputReceiver receiver, long maxTimeToOutputShellResponse, TimeUnit timeUnit, int retryAttempts)

Thực hiện một lệnh shell adb, với nhiều tham số hơn để kiểm soát hành vi lệnh.

void executeShellCommand (String command, IShellOutputReceiver receiver, long maxTimeoutForCommand, long maxTimeToOutputShellResponse, TimeUnit timeUnit, int retryAttempts)

Thực hiện một lệnh shell adb, với nhiều tham số hơn để kiểm soát hành vi lệnh.

void executeShellCommand (String command, IShellOutputReceiver receiver)

Thực thi lệnh shell adb đã cho, thử lại nhiều lần nếu lệnh không thành công.

CommandResult executeShellV2Command (String cmd)

Phương thức trình trợ giúp thực thi lệnh shell adb và trả về kết quả dưới dạng CommandResult được điền đúng với đầu ra trạng thái lệnh, stdout và stderr.

CommandResult executeShellV2Command (String cmd, OutputStream pipeToOutput)

Phương thức trình trợ giúp thực thi lệnh shell adb và trả về kết quả dưới dạng CommandResult được điền đúng với đầu ra trạng thái lệnh, stdout và stderr.

CommandResult executeShellV2Command (String cmd, File pipeAsInput)

Phương thức trình trợ giúp thực thi lệnh shell adb và trả về kết quả dưới dạng CommandResult được điền đúng với đầu ra trạng thái lệnh, stdout và stderr.

CommandResult executeShellV2Command (String cmd, long maxTimeoutForCommand, TimeUnit timeUnit, int retryAttempts)

Thực hiện một lệnh shell adb, với nhiều tham số hơn để kiểm soát hành vi lệnh.

CommandResult executeShellV2Command (String cmd, long maxTimeoutForCommand, TimeUnit timeUnit)

Thực hiện một lệnh shell adb, với nhiều tham số hơn để kiểm soát hành vi lệnh.

CommandResult executeShellV2Command (String cmd, File pipeAsInput, OutputStream pipeToOutput, long maxTimeoutForCommand, TimeUnit timeUnit, int retryAttempts)

Thực hiện một lệnh shell adb, với nhiều tham số hơn để kiểm soát hành vi lệnh.

CommandResult fastbootWipePartition (String partition)

Phương pháp trợ giúp xóa phân vùng cho thiết bị.

getActiveApexes ()

Lấy thông tin về APEX được kích hoạt trên thiết bị.

getAllSettings (String namespace)

Trả về cặp giá trị khóa của không gian tên được yêu cầu.

DeviceAllocationState getAllocationState ()

Trả về trạng thái phân bổ hiện tại của thiết bị

String getAndroidId (int userId)

Tìm và trả lại id android được liên kết với userId, null nếu không tìm thấy.

getAndroidIds ()

Tạo một bản đồ của các id android tìm thấy phù hợp với id người dùng.

int getApiLevel ()

Nhận cấp API thiết bị.

PackageInfo getAppPackageInfo (String packageName)

Lấy thông tin về một gói được cài đặt trên thiết bị.

String getBasebandVersion ()

Phương pháp thuận tiện để có phiên bản baseband (radio) của thiết bị này.

Integer getBattery ()

Trả về mức pin hiện tại của thiết bị hoặc Null nếu không có mức pin.

String getBootloaderVersion ()

Phương pháp thuận tiện để có được phiên bản bootloader của thiết bị này.

InputStreamSource getBugreport ()

Lấy một bugreport từ thiết bị.

InputStreamSource getBugreportz ()

Lấy một bugreportz từ thiết bị.

String getBuildAlias ()

Lấy bí danh của bản dựng mà thiết bị hiện đang chạy.

String getBuildFlavor ()

Lấy hương vị xây dựng cho thiết bị.

String getBuildId ()

Lấy bản dựng thiết bị hiện đang chạy.

String getBuildSigningKeys ()

Trả về loại khóa được sử dụng để ký vào hình ảnh thiết bị

Thông thường, các thiết bị Android có thể được ký bằng các khóa kiểm tra (như trong AOSP) hoặc các khóa phát hành (được kiểm soát bởi các nhà sản xuất thiết bị riêng lẻ)

String[] getChildren (String path)

Thay thế cho việc sử dụng IFileEntry đôi khi sẽ không hoạt động vì quyền.

int getCurrentUser ()

Trả về id của người dùng đang chạy.

String getDeviceClass ()

Lấy lớp thiết bị.

long getDeviceDate ()

Trả về ngày của thiết bị tính bằng mili giây kể từ epoch.

DeviceDescriptor getDeviceDescriptor ()

Trả về DeviceDescriptor từ thông tin thiết bị để nhận thông tin về nó mà không truyền đối tượng thiết bị thực tế.

TestDeviceState getDeviceState ()

Nhận trạng thái của thiết bị.

long getDeviceTimeOffset (Date date)

Giúp lấy chênh lệch thời gian giữa thiết bị và ERROR(/Date) .

InputStreamSource getEmulatorOutput ()

Nhận luồng của trình giả lập stdout và stderr

Process getEmulatorProcess ()

Trả về Process tương ứng với trình giả lập này.

final File getExecuteShellCommandLog ()

Nhật ký chứa tất cả các bản ghi executeShellCommand(String) .

long getExternalStoreFreeSpace ()

Phương pháp trợ giúp để xác định dung lượng trống trên bộ nhớ ngoài của thiết bị.

String getFastbootPath ()

Trả về đường dẫn của nhị phân fastboot đang được sử dụng.

String getFastbootProductType ()

Phương pháp thuận tiện để có được loại sản phẩm của thiết bị này khi ở chế độ fastboot.

String getFastbootProductVariant ()

Phương pháp thuận tiện để có được loại sản phẩm của thiết bị này khi ở chế độ fastboot.

String getFastbootVersion ()

Trả về chuỗi phiên bản của nhị phân fastboot đang được sử dụng.

IFileEntry getFileEntry (String path)

Truy xuất tham chiếu đến một tệp từ xa trên thiết bị.

IFileEntry getFileEntry (FileListingService.FileEntry entry)

Người trợ giúp không chính thức để lấy FileEntry từ đường dẫn không root.

IDevice getIDevice ()

Returns một tham chiếu đến ddmlib liên IDevice .

getInstalledPackageNames ()

Lấy tên gói ứng dụng có trên thiết bị.

String getIpAddress ()

Lấy địa chỉ IP của thiết bị.

KeyguardControllerState getKeyguardState ()

Trả về một đối tượng để có trạng thái hiện tại của keyguard hoặc null nếu không được hỗ trợ.

long getLastExpectedRebootTimeMillis ()

Trả về lần cuối API được giao dịch đã kích hoạt khởi động lại sau một phần nghìn giây kể từ khi EPOCH được System.currentTimeMillis() trả về.

InputStreamSource getLogcat ()

Lấy một luồng ảnh chụp nhanh của dữ liệu logcat.

InputStreamSource getLogcat (int maxBytes)

Lấy một luồng ảnh chụp nhanh của các maxBytes cuối cùng của dữ liệu logcat đã chụp.

InputStreamSource getLogcatDump ()

Nhận một bãi chứa logcat hiện tại cho thiết bị.

InputStreamSource getLogcatSince (long date)

Lấy một luồng ảnh chụp nhanh của dữ liệu logcat đã bắt đầu từ ngày được cung cấp.

String getMacAddress ()

Trả về địa chỉ MAC của thiết bị, null nếu không truy vấn được từ thiết bị.

int getMaxNumberOfRunningUsersSupported ()

Nhận số lượng tối đa người dùng được hỗ trợ chạy đồng thời.

int getMaxNumberOfUsersSupported ()

Lấy số lượng người dùng được hỗ trợ tối đa.

IDeviceStateMonitor getMonitor ()

Trả về IDeviceStateMonitor liên kết với thiết bị.

String getMountPoint (String mountName)

Trả về một điểm gắn kết.

ITestDevice.MountPointInfo getMountPointInfo (String mountpoint)

Trả về MountPointInfo tương ứng với đường dẫn mountpoint đã chỉ định hoặc null nếu đường dẫn đó không có gì được gắn hoặc nếu không sẽ không xuất hiện trong / Proc / mounts dưới dạng mountpoint.

getMountPointInfo ()

Trả về phiên bản được phân tích cú pháp của thông tin trong / Proc / mounts trên thiết bị

TestDeviceOptions getOptions ()

Lấy các tùy chọn kiểm tra cho thiết bị.

long getPartitionFreeSpace (String partition)

Phương pháp trợ giúp để xác định dung lượng trống trên phân vùng thiết bị.

Integer getPrimaryUserId ()

Trả về id người dùng chính.

ProcessInfo getProcessByName (String processName)

Phương thức của trình trợ giúp chạy lệnh "ps" và trả về USER, PID và NAME của tên quy trình đã cho.

String getProcessPid (String process)

Trả về giá trị dịch vụ hoặc null nếu có sự cố.

getProcesses ()

Phương thức của trình trợ giúp chạy lệnh "ps" và trả về danh sách USER, PID và NAME của tất cả các quy trình.

String getProductType ()

Phương pháp thuận tiện để có được loại sản phẩm của thiết bị này.

String getProductVariant ()

Phương pháp thuận tiện để có được các biến thể sản phẩm của thiết bị này.

String getProperty (String name)

Lấy giá trị tài sản nhất định từ thiết bị.

ITestDevice.RecoveryMode getRecoveryMode ()

Nhận chế độ phục hồi hiện tại được sử dụng cho thiết bị.

InputStreamSource getScreenshot (int displayId)

Lấy một ảnh chụp màn hình từ thiết bị hiển thị id.

InputStreamSource getScreenshot (String format)

Lấy một ảnh chụp màn hình từ thiết bị.

InputStreamSource getScreenshot (String format, boolean rescale)

Lấy một ảnh chụp màn hình từ thiết bị.

InputStreamSource getScreenshot ()

Lấy một ảnh chụp màn hình từ thiết bị.

String getSerialNumber ()

Phương pháp thuận tiện để có được số sê-ri của thiết bị này.

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

Trả về giá trị của cài đặt được yêu cầu.

String getSetting (String namespace, String key)

Xem getSetting(int, String, String) và được thực hiện trên người dùng hệ thống.

String getSimOperator ()

Trả lại nhà điều hành thẻ SIM hoặc null nếu không có thiết bị.

String getSimState ()

Trả lại trạng thái thẻ SIM hoặc null nếu không có thiết bị.

getTombstones ()

Lấy và trả về danh sách bia mộ từ các thiết bị.

long getTotalMemory ()

Trả về tổng kích thước bộ nhớ vật lý theo byte hoặc -1 trong trường hợp có lỗi nội bộ

getUninstallablePackageNames ()

Lấy tên gói ứng dụng có thể được gỡ cài đặt.

boolean getUseFastbootErase ()

Nhận xem nên sử dụng định dạng xóa fastboot hoặc fastboot để xóa phân vùng trên thiết bị.

int getUserFlags (int userId)

Tìm và trả lại cờ của một người dùng nhất định.

getUserInfos ()

Nhận Bản đồ sử dụngId đến UserInfo trên thiết bị.

int getUserSerialNumber (int userId)

Trả về số sê-ri được liên kết với userId nếu tìm thấy, -10000 trong mọi trường hợp khác.

IManagedTestDevice.DeviceEventResponse handleAllocationEvent (DeviceEvent event)

Xử lý DeviceEvent cho.

Xử lý DeviceEvent, có thể hoặc không thể chuyển thiết bị này sang trạng thái phân bổ mới.

boolean hasFeature (String feature)

Kiểm tra nếu một tính năng có sẵn trên một thiết bị.

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

Cài đặt gói Android trên thiết bị.

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

Cài đặt gói Android trên thiết bị.

String installPackageForUser (File packageFile, boolean reinstall, int userId, String... extraArgs)

Cài đặt gói Android trên thiết bị cho một người dùng nhất định.

String installPackageForUser (File packageFile, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)

Cài đặt gói Android trên thiết bị cho một người dùng nhất định.

boolean isAdbRoot ()

boolean isAdbTcp ()
boolean isDeviceEncrypted ()

Trả về nếu thiết bị được mã hóa.

boolean isDirectory (String path)

Trả về True nếu đường dẫn trên thiết bị là một thư mục, sai thì ngược lại.

boolean isEnableAdbRoot ()
boolean isEncryptionSupported ()

Trả về nếu mã hóa được hỗ trợ trên thiết bị.

boolean isExecutable (String fullPath)

Trả về Đúng nếu đường dẫn tệp trên thiết bị là tệp thực thi, nếu không thì sai.

boolean isFastbootEnabled ()

Quay trở lại nếu fastboot có sẵn cho thiết bị.

boolean isHeadless ()

Trả về true nếu thiết bị không đầu (không có màn hình), sai khác.

boolean isMultiUserSupported ()

Xác định nếu nhiều người dùng được hỗ trợ.

boolean isPackageInstalled (String packageName, String userId)

Truy vấn thiết bị cho một tên gói nhất định và id người dùng đã cho để kiểm tra xem nó có được cài đặt hay không cho người dùng đó.

boolean isPackageInstalled (String packageName)

Truy vấn thiết bị để biết tên gói đã cho để kiểm tra xem nó có được cài đặt hay không.

boolean isRuntimePermissionSupported ()

Kiểm tra xem nền tảng trên thiết bị có hỗ trợ cấp quyền thời gian chạy không

boolean isUserRunning (int userId)

Kiểm tra nếu một người dùng nhất định đang chạy.

boolean isUserSecondary (int userId)

Trả về việc người dùng được chỉ định có phải là người dùng phụ theo các cờ của nó hay không.

boolean isWifiEnabled ()

Kiểm tra nếu wifi được kích hoạt.

listDisplayIds ()

Thu thập danh sách id hiển thị có sẵn trên thiết bị như được báo cáo bởi "dumpsys SurfaceFlinger".

listUsers ()

Lấy danh sách người dùng trên thiết bị.

boolean logBugreport (String dataName, ITestLogger listener)

Phương thức trợ giúp để lấy một bugreport và đăng nhập nó cho các phóng viên.

void logOnDevice (String tag, Log.LogLevel level, String format, Object... args)

Đăng nhập một tin nhắn trong logcat của thiết bị.

void nonBlockingReboot ()

Đưa ra lệnh để khởi động lại thiết bị và trả về lệnh hoàn thành và khi thiết bị không còn hiển thị cho adb.

void postAdbRootAction ()

Ghi đè nếu thiết bị cần một số hành động cụ thể được thực hiện sau khi root adb và trước khi thiết bị trực tuyến trở lại.

void postAdbUnrootAction ()

Ghi đè nếu thiết bị cần một số hành động cụ thể được thực hiện sau khi adb unroot và trước khi thiết bị trực tuyến trở lại.

void postBootSetup ()

Thực hiện các hướng dẫn để định cấu hình thiết bị để kiểm tra sau mỗi lần khởi động.

void postInvocationTearDown ()

Các bước bổ sung cho việc dọn dẹp theo yêu cầu cụ thể của thiết bị sẽ được thực hiện sau khi thực hiện yêu cầu.

void preInvocationSetup ( IBuildInfo info)

Các bước bổ sung cho thiết lập yêu cầu cụ thể của thiết bị sẽ được thực hiện trên thiết bị trước luồng gọi.

boolean pullDir (String deviceFilePath, File localDir)

Đệ quy kéo nội dung thư mục từ thiết bị.

boolean pullFile (String remoteFilePath, File localFile)

Lấy một tập tin ra khỏi thiết bị.

File pullFile (String remoteFilePath)

Lấy một tập tin ra khỏi thiết bị, lưu nó trong một ERROR(/File) tạm thời cục bộ và trả về File đó.

String pullFileContents (String remoteFilePath)

Lấy một tập tin ra khỏi thiết bị và trả về nội dung.

File pullFileFromExternal (String remoteFilePath)

Phương pháp tiện lợi để truy xuất tệp từ bộ nhớ ngoài của thiết bị, lưu trữ tệp đó trong ERROR(/File) tạm thời cục bộ và trả về tham chiếu đến File đó.

boolean pushDir (File localFileDir, String deviceFilePath, excludedDirectories) pushDir (File localFileDir, String deviceFilePath, excludedDirectories)

Đệ quy đẩy nội dung thư mục vào thiết bị trong khi loại trừ một số thư mục được lọc.

boolean pushDir (File localFileDir, String deviceFilePath)

Đệ quy đẩy nội dung thư mục vào thiết bị.

boolean pushFile (File localFile, String remoteFilePath)

Đẩy tập tin vào thiết bị

boolean pushString (String contents, String remoteFilePath)

Đẩy tập tin được tạo từ một chuỗi vào thiết bị

void reboot ()

Khởi động lại thiết bị vào chế độ adb.

void rebootIntoBootloader ()

Khởi động lại thiết bị vào chế độ bootloader.

void rebootIntoRecovery ()

Khởi động lại thiết bị vào chế độ phục hồi adb.

void rebootUntilOnline ()

Một thay thế để reboot() chỉ chặn cho đến khi thiết bị đang trực tuyến tức là hiển thị với adb.

void recoverDevice ()

Nỗ lực phục hồi giao tiếp thiết bị.

void remountSystemWritable ()

Làm cho phân vùng hệ thống trên thiết bị có thể ghi.

boolean removeAdmin (String componentName, int userId)

Xóa quản trị viên thiết bị đã cho trong người dùng cụ thể và trả về true nếu thành công, false nếu không.

void removeOwners ()

Xóa tất cả các chủ sở hữu hồ sơ thiết bị hiện có với nỗ lực tốt nhất.

boolean removeUser (int userId)

Xóa một người dùng nhất định khỏi thiết bị.

boolean runInstrumentationTests (IRemoteAndroidTestRunner runner, ITestLifeCycleReceiver... listeners)

Phương pháp thuận tiện để thực hiện ERROR(/#runInstrumentationTests(com.android.ddmlib.testrunner.IRemoteAndroidTestRunner,Collection)) với một hoặc nhiều người nghe được truyền dưới dạng tham số.

boolean runInstrumentationTests (IRemoteAndroidTestRunner runner, listeners) runInstrumentationTests (IRemoteAndroidTestRunner runner, listeners)

Chạy thử nghiệm thiết bị, và cung cấp phục hồi thiết bị.

boolean runInstrumentationTestsAsUser (IRemoteAndroidTestRunner runner, int userId, ITestLifeCycleReceiver... listeners)

Giống như ITestDevice#runInstrumentationTests(IRemoteAndroidTestRunner, ITestLifeCycleReceiver...) nhưng chạy thử nghiệm cho một người dùng nhất định.

boolean runInstrumentationTestsAsUser (IRemoteAndroidTestRunner runner, int userId, listeners) runInstrumentationTestsAsUser (IRemoteAndroidTestRunner runner, int userId, listeners)

Giống như ERROR(ITestDevice#runInstrumentationTests(IRemoteAndroidTestRunner, Collection)/com.android.tradefed.device.ITestDevice#runInstrumentationTests(com.android.ddmlib.testrunner.IRemoteAndroidTestRunner,Collection) ITestDevice#runInstrumentationTests(IRemoteAndroidTestRunner, Collection)) cho người dùng nhất định.

void setDate (Date date)

Đặt ngày trên thiết bị

Lưu ý: cài đặt ngày trên thiết bị yêu cầu root

boolean setDeviceOwner (String componentName, int userId)

Đặt thành phần quản trị viên thiết bị làm chủ sở hữu thiết bị ở người dùng cụ thể.

void setDeviceState ( TestDeviceState deviceState)

Cập nhật trạng thái của thiết bị.

void setEmulatorOutputStream ( SizeLimitedOutputStream output)

Đối với trình giả lập, đặt SizeLimitedOutputStream để ghi nhật ký đầu ra

void setEmulatorProcess (Process p)

Đặt Process , khi thiết bị này là trình giả lập.

void setFastbootEnabled (boolean fastbootEnabled)

Đặt tùy chọn fastboot cho thiết bị.

void setFastbootPath (String fastbootPath)

Đặt đường dẫn đến nhị phân fastboot nên được sử dụng.

void setIDevice (IDevice newDevice)

Cập nhật IDevice liên quan đến ITestDevice này.

void setOptions ( TestDeviceOptions options)

Đặt TestDeviceOptions cho thiết bị

boolean setProperty (String propKey, String propValue)

Đặt giá trị thuộc tính đã cho trên thiết bị.

void setRecovery ( IDeviceRecovery recovery)

Đặt IDeviceRecovery để sử dụng cho thiết bị này.

void setRecoveryMode ( ITestDevice.RecoveryMode mode)

Đặt chế độ khôi phục hiện tại để sử dụng cho thiết bị.

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

Xem setSetting(int, String, String, String) và được thực hiện trên người dùng hệ thống.

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

Thêm một giá trị cài đặt vào không gian tên của một người dùng nhất định.

void setUseFastbootErase (boolean useFastbootErase)

Đặt xem sử dụng định dạng xóa fastboot hoặc fastboot để xóa phân vùng trên thiết bị.

void startLogcat ()

Bắt đầu chụp đầu ra logcat từ thiết bị trong nền.

boolean startUser (int userId)

Bắt đầu một người dùng nhất định trong nền nếu nó hiện đang dừng.

boolean startUser (int userId, boolean waitFlag)

Bắt đầu một người dùng nhất định trong nền nếu nó hiện đang dừng.

void stopEmulatorOutput ()

Đóng và xóa đầu ra giả lập.

void stopLogcat ()

Dừng bắt đầu ra logcat từ thiết bị và loại bỏ dữ liệu logcat hiện đang lưu.

boolean stopUser (int userId)

Dừng một người dùng nhất định.

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

Dừng một người dùng nhất định.

String switchToAdbTcp ()

Chuyển thiết bị sang chế độ adb-over-tcp.

boolean switchToAdbUsb ()

Chuyển thiết bị sang adb qua chế độ usb.

boolean switchUser (int userId)

Chuyển sang userId khác với thời gian chờ mặc định.

boolean switchUser (int userId, long timeout)

Chuyển sang một userId khác với thời gian chờ được cung cấp là thời hạn.

boolean syncFiles (File localFileDir, String deviceFilePath)

Đồng bộ hóa nội dung của một thư mục tệp cục bộ vào thiết bị.

Bugreport takeBugreport ()

Lấy một bugreport và trả nó vào trong một đối tượng Bugreport để xử lý nó.

boolean unencryptDevice ()

Mở khóa thiết bị.

String uninstallPackage (String packageName)

Gỡ cài đặt gói Android khỏi thiết bị.

boolean unlockDevice ()

Mở khóa thiết bị nếu thiết bị ở trạng thái được mã hóa.

boolean waitForBootComplete (long timeOut)

Chặn cho đến khi cờ khởi động hoàn tất của thiết bị được đặt.

void waitForDeviceAvailable ()

Chờ thiết bị phản hồi và có sẵn để thử nghiệm.

void waitForDeviceAvailable (long waitTime)

Chờ thiết bị phản hồi và có sẵn để thử nghiệm.

boolean waitForDeviceInRecovery (long waitTime)

Các khối cho thiết bị ở trạng thái 'phục hồi adb' (lưu ý điều này khác với IDeviceRecovery ).

boolean waitForDeviceNotAvailable (long waitTime)

Các khối cho thiết bị không khả dụng tức là thiếu adb

void waitForDeviceOnline ()

Khối cho đến khi thiết bị được hiển thị thông qua adb.

void waitForDeviceOnline (long waitTime)

Khối cho đến khi thiết bị được hiển thị thông qua adb.

boolean waitForDeviceShell (long waitTime)

Chờ thiết bị phản hồi với lệnh shell adb cơ bản.

Phương pháp bảo vệ

void checkApiLevelAgainst (String feature, int strictMinLevel)
NativeDevice.RebootDeviceAction createRebootDeviceAction (String into)

Tạo RebootDeviceAction được sử dụng khi thực hiện hành động khởi động lại.

void doAdbReboot (String into)

Thực hiện khởi động lại adb.

void ensureRuntimePermissionSupported ()

phương thức trợ giúp để ném ngoại lệ nếu không cho phép thời gian chạy

InputStreamSource getBugreportInternal ()
File getBugreportzInternal ()

Phương thức Trình trợ giúp nội bộ để lấy tệp zip bugreportz dưới dạng ERROR(/File) .

IRunUtil getRunUtil ()

Lấy ví dụ RunUtil để sử dụng.

String internalGetProperty (String propName, String fastbootVar, String description)

Lấy một thuộc tính thiết bị, từ bộ đệm ddmlib theo mặc định và quay lại `` adb shell getprop` hoặc` fastboot getvar` tùy thuộc vào việc thiết bị có ở Fastboot hay không.

boolean isNewer (File localFile, IFileEntry entry)

Trả về true nếu tệp cục bộ mới hơn tệp từ xa.

boolean performDeviceAction (String actionDescription, com.android.tradefed.device.NativeDevice.DeviceAction action, int retryAttempts)

Thực hiện một hành động trên thiết bị này.

void postAdbReboot ()

Các hành động bổ sung có thể có thể được thực hiện sau khi khởi động lại.

void prePostBootSetup ()

Cho phép từng loại thiết bị (AndroidNativeDevice, TestDevice) ghi đè phương thức này để thiết lập khởi động bài cụ thể.

void setClock (Clock clock)

Đặt phiên bản Đồng hồ để sử dụng.

void setLogStartDelay (int delay)

Đặt thời gian tính bằng ms để chờ trước khi bắt đầu chụp logcat cho thiết bị trực tuyến.

void waitForDeviceNotAvailable (String operationDesc, long time)

Hằng số

ID NGƯỜI DÙNG KHÔNG HỢP LỆ

public static final int INVALID_USER_ID

Giá trị được trả về cho bất kỳ id người dùng không hợp lệ / không tìm thấy: UserHandle đã xác định giá trị -10000

Giá trị không đổi: -10000 (0xffffd8f0)

MAX_HOST_DEVICE_TIME_OFFSET

protected static final long MAX_HOST_DEVICE_TIME_OFFSET

Giá trị không đổi: 5000 (0x0000000000001388)

MAX_RETRY_ATTEMPTS

protected static final int MAX_RETRY_ATTEMPTS

số lần thử lại lệnh mặc định để thực hiện

Giá trị không đổi: 2 (0x00000002)

Lĩnh vực

mOptions

protected TestDeviceOptions mOptions

mStateMonitor

protected final IDeviceStateMonitor mStateMonitor

Nhà xây dựng công cộng

Bản địa

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

Tạo một TestDevice .

Thông số
device IDevice : IDevice liên quan

stateMonitor IDeviceStateMonitor : cơ chế IDeviceStateMonitor sẽ sử dụng

allocationMonitor IDeviceMonitor : IDeviceMonitor để thông báo về những thay đổi trạng thái phân bổ. Có thể là null

Phương pháp công cộng

kiểm traApiLevelAgainstNextRelease

public boolean checkApiLevelAgainstNextRelease (int strictMinLevel)

Kiểm tra xem một tính năng hiện có được hỗ trợ ở mức được hỗ trợ tối thiểu hay không. Phương pháp này tính đến các tính năng chưa được phát hành trước khi mức API được nâng lên.

Thông số
strictMinLevel int : Mức tối thiểu có thể hỗ trợ tính năng.

Trả về
boolean Đúng nếu mức được hỗ trợ. Sai khác.

Ném
DeviceNotAvailableException

kiểm tra kết nối

public boolean checkConnectivity ()

Kiểm tra xem thiết bị có kết nối mạng không.

Trả về
boolean true nếu thiết bị có kết nối mạng hoạt động, false quá mức.

Ném
DeviceNotAvailableException

xóaErrorDialogs

public boolean clearErrorDialogs ()

Cố gắng loại bỏ bất kỳ hộp thoại lỗi hiện đang hiển thị trên giao diện người dùng thiết bị.

Trả về
boolean true nếu không có hộp thoại nào xuất hiện hoặc hộp thoại được xóa thành công. false khác.

Ném
DeviceNotAvailableException

xóaLastConnectedWifiNetwork

public void clearLastConnectedWifiNetwork ()

Xóa mạng wifi được kết nối lần cuối. Điều này nên được gọi khi bắt đầu một lệnh gọi mới để tránh kết nối với mạng wifi được sử dụng trong thử nghiệm trước đó sau khi thiết bị khởi động lại.

ClearLogcat

public void clearLogcat ()

Xóa mọi dữ liệu logcat tích lũy.

Điều này hữu ích cho các trường hợp khi bạn muốn đảm bảo ITestDevice#getLogcat() chỉ trả về dữ liệu nhật ký được tạo sau một thời điểm nhất định (chẳng hạn như sau khi flash một bản dựng thiết bị mới, v.v.).

kết nối với mạng

public boolean connectToWifiNetwork (String wifiSsid, 
                String wifiPsk)

Kết nối với mạng wifi.

Bật wifi và chặn cho đến khi kết nối thành công được thực hiện với mạng wifi được chỉ định. Khi một kết nối được tạo, cá thể sẽ cố gắng khôi phục kết nối sau mỗi lần khởi động lại cho đến khi ITestDevice#disconnectFromWifi() hoặc ITestDevice#clearLastConnectedWifiNetwork() được gọi.

Thông số
wifiSsid String : ssid wifi để kết nối với

wifiPsk String : Cụm mật khẩu PSK hoặc null nếu không được mã hóa

Trả về
boolean true nếu kết nối với mạng wifi thành công. false khác

Ném
DeviceNotAvailableException

kết nối với mạng

public boolean connectToWifiNetwork (String wifiSsid, 
                String wifiPsk, 
                boolean scanSsid)

Kết nối với mạng wifi.

Bật wifi và chặn cho đến khi kết nối thành công được thực hiện với mạng wifi được chỉ định. Khi một kết nối được tạo, cá thể sẽ cố gắng khôi phục kết nối sau mỗi lần khởi động lại cho đến khi ITestDevice#disconnectFromWifi() hoặc ITestDevice#clearLastConnectedWifiNetwork() được gọi.

Thông số
wifiSsid String : ssid wifi để kết nối với

wifiPsk String : Cụm mật khẩu PSK hoặc null nếu không được mã hóa

scanSsid boolean : có quét SSID ẩn cho mạng này không.

Trả về
boolean true nếu kết nối với mạng wifi thành công. false khác

Ném
DeviceNotAvailableException

kết nối vớiWifiNetwork IfNeeded

public boolean connectToWifiNetworkIfNeeded (String wifiSsid, 
                String wifiPsk, 
                boolean scanSsid)

Một biến thể của connectToWifiNetwork(String, String) chỉ kết nối nếu thiết bị hiện không có kết nối mạng.

Thông số
scanSsid boolean : có quét SSID ẩn cho mạng này không

Trả về
boolean true nếu kết nối với mạng wifi thành công. false khác

Ném
DeviceNotAvailableException

kết nối vớiWifiNetwork IfNeeded

public boolean connectToWifiNetworkIfNeeded (String wifiSsid, 
                String wifiPsk)

Một biến thể của connectToWifiNetwork(String, String) chỉ kết nối nếu thiết bị hiện không có kết nối mạng.

Trả về
boolean true nếu kết nối với mạng wifi thành công. false khác

Ném
DeviceNotAvailableException

tạo người dùng

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

Tạo người dùng với một tên cụ thể và các cờ được cung cấp

Thông số
name String : của người dùng để tạo trên thiết bị

guest boolean : bật cờ người dùng - bảo vệ trong khi tạo

ephemeral boolean : bật cờ người dùng - thận trọng trong khi tạo

Trả về
int id của người dùng đã tạo

Ném
DeviceNotAvailableException

tạo người dùng

public int createUser (String name)

Tạo người dùng với tên đã cho và cờ mặc định 0.

Thông số
name String : của người dùng để tạo trên thiết bị

Trả về
int số nguyên cho id người dùng được tạo

Ném
DeviceNotAvailableException

tạoUserNoThrow

public int createUserNoThrow (String name)

Tạo người dùng với tên đã cho và cờ mặc định 0.

Thông số
name String : của người dùng để tạo trên thiết bị

Trả về
int số nguyên cho id người dùng được tạo hoặc -1 cho lỗi.

Ném
DeviceNotAvailableException

xóa tài liệu

public void deleteFile (String deviceFilePath)

Phương pháp trợ giúp để xóa một tập tin hoặc thư mục trên thiết bị.

Thông số
deviceFilePath String : Đường dẫn tuyệt đối của tệp trên thiết bị.

Ném
DeviceNotAvailableException

vô hiệu hóa

public boolean disableAdbRoot ()

Tắt gốc adb.

Vô hiệu hóa root adb có thể khiến thiết bị ngắt kết nối với adb. Phương pháp này sẽ chặn cho đến khi thiết bị có sẵn.

Trả về
boolean true nếu thành công.

Ném
DeviceNotAvailableException

vô hiệu hóa

public void disableKeyguard ()

Nỗ lực vô hiệu hóa keyguard.

Trước tiên, chờ công văn đầu vào sẵn sàng, điều này xảy ra cùng thời điểm khi thiết bị báo cáo BOOT_COMPLETE, rõ ràng là không đồng bộ, vì việc triển khai khung hiện tại có điều kiện chạy đua thường xuyên. Sau đó, lệnh được gửi để loại bỏ keyguard (chỉ hoạt động trên những cái không an toàn)

Ném
DeviceNotAvailableException

vô hiệu hóa NetworkMonitor

public boolean disableNetworkMonitor ()

Vô hiệu hóa giám sát mạng trên thiết bị.

Trả về
boolean true nếu giám sát bị vô hiệu hóa thành công. false nếu thất bại.

Ném
DeviceNotAvailableException

ngắt kết nối từ xa

public boolean disconnectFromWifi ()

Ngắt kết nối mạng wifi.

Loại bỏ tất cả các mạng khỏi danh sách mạng đã biết và vô hiệu hóa wifi.

Trả về
boolean true nếu ngắt kết nối mạng wifi thành công. false nếu ngắt kết nối thất bại.

Ném
DeviceNotAvailableException

doesFileExist

public boolean doesFileExist (String deviceFilePath)

Phương pháp trợ giúp để xác định xem tập tin trên thiết bị có tồn tại không.

Thông số
deviceFilePath String : đường dẫn tuyệt đối của tệp trên thiết bị để kiểm tra

Trả về
boolean true nếu tập tin tồn tại, false khác.

Ném
DeviceNotAvailableException

bãi rác

public File dumpHeap (String process, 
                String devicePath)

Cố gắng đổ đống từ máy chủ system_server. Người gọi có trách nhiệm dọn dẹp tập tin bị đổ.

Thông số
process String : tên của quá trình thiết bị để dumpheap trên.

devicePath String : đường dẫn trên thiết bị nơi đặt kết xuất. Đây phải là một vị trí nơi quyền cho phép nó.

Trả về
File ERROR(/File) có chứa báo cáo. Null nếu một cái gì đó thất bại.

Ném
DeviceNotAvailableException

enableAdbRoot

public boolean enableAdbRoot ()

Bật gốc adb. Nếu cài đặt "enable-root" là "false", sẽ ghi thông báo và trả về mà không bật root.

Kích hoạt root adb có thể khiến thiết bị ngắt kết nối với adb. Phương pháp này sẽ chặn cho đến khi thiết bị có sẵn.

Trả về
boolean true nếu thành công.

Ném
DeviceNotAvailableException

enableNetworkMonitor

public boolean enableNetworkMonitor ()

Cho phép giám sát mạng trên thiết bị.

Trả về
boolean true nếu giám sát được kích hoạt thành công. false nếu thất bại.

Ném
DeviceNotAvailableException

Thiết bị mã hóa

public boolean encryptDevice (boolean inplace)

Mã hóa thiết bị.

Mã hóa thiết bị có thể được thực hiện tại chỗ hoặc bằng một lần lau. Mã hóa tại chỗ sẽ không xóa bất kỳ dữ liệu nào trên thiết bị nhưng thông thường sẽ mất một vài đơn đặt hàng lớn hơn thời gian xóa.

Phương pháp này sẽ khởi động lại thiết bị nếu nó chưa được mã hóa và sẽ chặn cho đến khi thiết bị trực tuyến. Ngoài ra, nó sẽ không giải mã thiết bị sau khi khởi động lại. Do đó, thiết bị có thể không được khởi động đầy đủ và / hoặc sẵn sàng để được kiểm tra khi phương thức này trở lại.

Thông số
inplace boolean : nếu quá trình mã hóa sẽ diễn ra và thiết bị không bị xóa.

Trả về
boolean true nếu thành công.

Ném
DeviceNotAvailableException

thực thiAdbCommand

public String executeAdbCommand (String... cmdArgs)

Phương thức trợ giúp thực thi lệnh adb dưới dạng lệnh hệ thống.

executeShellCommand(String) nên được sử dụng thay thế bất cứ khi nào có thể, vì phương thức đó cung cấp hiệu suất và phát hiện lỗi tốt hơn.

Thông số
cmdArgs String : lệnh adb và đối số để chạy

Trả về
String thiết bị xuất chuẩn từ lệnh. null nếu lệnh không thực thi.

Ném
DeviceNotAvailableException

thực hiệnFastbootCommand

public CommandResult executeFastbootCommand (String... cmdArgs)

Phương thức trình trợ giúp thực thi lệnh fastboot dưới dạng lệnh hệ thống với thời gian chờ mặc định là 2 phút.

Dự kiến ​​sẽ được sử dụng khi thiết bị đã ở chế độ fastboot.

Thông số
cmdArgs String : lệnh fastboot và các đối số để chạy

Trả về
CommandResult CommandResult chứa đầu ra của lệnh

Ném
DeviceNotAvailableException

thực hiệnFastbootCommand

public CommandResult executeFastbootCommand (long timeout, 
                String... cmdArgs)

Phương thức trình trợ giúp thực thi lệnh fastboot dưới dạng lệnh hệ thống.

Dự kiến ​​sẽ được sử dụng khi thiết bị đã ở chế độ fastboot.

Thông số
timeout long : thời gian tính bằng mili giây trước khi lệnh hết hạn

cmdArgs String : lệnh fastboot và các đối số để chạy

Trả về
CommandResult CommandResult chứa đầu ra của lệnh

Ném
DeviceNotAvailableException

thực hiệnLongFastbootCommand

public CommandResult executeLongFastbootCommand (String... cmdArgs)

Phương thức trình trợ giúp thực thi lệnh fastboot chạy dài như một lệnh hệ thống.

Đồng nhất với executeFastbootCommand(String) ngoại trừ sử dụng thời gian chờ lâu hơn.

Thông số
cmdArgs String : lệnh fastboot và các đối số để chạy

Trả về
CommandResult CommandResult chứa đầu ra của lệnh

Ném
DeviceNotAvailableException

thực hiệnShellCommand

public String executeShellCommand (String command)

Phương thức trình trợ giúp thực thi lệnh shell adb và trả về đầu ra dưới dạng String .

Thông số
command String : lệnh shell adb để chạy

Trả về
String đầu ra vỏ

Ném
DeviceNotAvailableException

thực hiệnShellCommand

public void executeShellCommand (String command, 
                IShellOutputReceiver receiver, 
                long maxTimeToOutputShellResponse, 
                TimeUnit timeUnit, 
                int retryAttempts)

Thực hiện một lệnh shell adb, với nhiều tham số hơn để kiểm soát hành vi lệnh.

Thông số
command String : lệnh shell adb để chạy

receiver IShellOutputReceiver : IShellOutputReceiver để đầu ra shell trực tiếp tới.

maxTimeToOutputShellResponse long : lượng thời gian tối đa mà lệnh được phép không xuất ra bất kỳ phản hồi nào; đơn vị như được chỉ định trong timeUnit

timeUnit TimeUnit : đơn vị cho maxTimeToOutputShellResponse

retryAttempts int : số lần tối đa để thử lại lệnh nếu thất bại do ngoại lệ. DeviceNotResponsiveException sẽ bị ném nếu retryAttempts được thực hiện mà không thành công.

Ném
DeviceNotAvailableException

thực hiệnShellCommand

public void executeShellCommand (String command, 
                IShellOutputReceiver receiver, 
                long maxTimeoutForCommand, 
                long maxTimeToOutputShellResponse, 
                TimeUnit timeUnit, 
                int retryAttempts)

Thực hiện một lệnh shell adb, với nhiều tham số hơn để kiểm soát hành vi lệnh.

Thông số
command String : lệnh shell adb để chạy

receiver IShellOutputReceiver : IShellOutputReceiver để đầu ra shell trực tiếp tới.

maxTimeoutForCommand long : thời gian chờ tối đa để lệnh hoàn thành; đơn vị như được chỉ định trong timeUnit

maxTimeToOutputShellResponse long : lượng thời gian tối đa mà lệnh được phép không xuất ra bất kỳ phản hồi nào; đơn vị như được chỉ định trong timeUnit

timeUnit TimeUnit : đơn vị cho maxTimeToOutputShellResponse

retryAttempts int : số lần tối đa để thử lại lệnh nếu thất bại do ngoại lệ. DeviceNotResponsiveException sẽ bị ném nếu retryAttempts được thực hiện mà không thành công.

Ném
DeviceNotAvailableException

thực hiệnShellCommand

public void executeShellCommand (String command, 
                IShellOutputReceiver receiver)

Thực thi lệnh shell adb đã cho, thử lại nhiều lần nếu lệnh không thành công.

Một dạng đơn giản hơn của executeShellCommand(String, com.android.ddmlib.IShellOutputReceiver, long, TimeUnit, int) với các giá trị mặc định.

Thông số
command String : lệnh shell adb để chạy

receiver IShellOutputReceiver : IShellOutputReceiver để đầu ra shell trực tiếp tới.

Ném
DeviceNotAvailableException

thực hiệnShellV2Command

public CommandResult executeShellV2Command (String cmd)

Phương thức trình trợ giúp thực thi lệnh shell adb và trả về kết quả dưới dạng CommandResult được điền đúng với đầu ra trạng thái lệnh, stdout và stderr.

Thông số
cmd String : Lệnh nên được chạy.

Trả về
CommandResult Kết quả trong CommandResult .

Ném
DeviceNotAvailableException

thực hiệnShellV2Command

public CommandResult executeShellV2Command (String cmd, 
                OutputStream pipeToOutput)

Phương thức trình trợ giúp thực thi lệnh shell adb và trả về kết quả dưới dạng CommandResult được điền đúng với đầu ra trạng thái lệnh, stdout và stderr.

Thông số
cmd String : Lệnh nên được chạy.

pipeToOutput OutputStream : ERROR(/OutputStream) trong đó đầu ra tiêu chuẩn sẽ được chuyển hướng.

Trả về
CommandResult Kết quả trong CommandResult .

Ném
DeviceNotAvailableException

thực hiệnShellV2Command

public CommandResult executeShellV2Command (String cmd, 
                File pipeAsInput)

Phương thức trình trợ giúp thực thi lệnh shell adb và trả về kết quả dưới dạng CommandResult được điền đúng với đầu ra trạng thái lệnh, stdout và stderr.

Thông số
cmd String : Lệnh nên được chạy.

pipeAsInput File : Một ERROR(/File) sẽ được chuyển thành đầu vào cho lệnh.

Trả về
CommandResult Kết quả trong CommandResult .

Ném
DeviceNotAvailableException

thực hiệnShellV2Command

public CommandResult executeShellV2Command (String cmd, 
                long maxTimeoutForCommand, 
                TimeUnit timeUnit, 
                int retryAttempts)

Thực hiện một lệnh shell adb, với nhiều tham số hơn để kiểm soát hành vi lệnh.

Thông số
cmd String : lệnh shell adb để chạy

maxTimeoutForCommand long : thời gian chờ tối đa để lệnh hoàn thành; đơn vị như được chỉ định trong timeUnit

timeUnit TimeUnit : đơn vị cho maxTimeToOutputShellResponse

retryAttempts int : số lần tối đa để thử lại lệnh nếu thất bại do ngoại lệ. DeviceNotResponsiveException sẽ bị ném nếu retryAttempts được thực hiện mà không thành công.

Trả về
CommandResult

Ném
DeviceNotAvailableException

thực hiệnShellV2Command

public CommandResult executeShellV2Command (String cmd, 
                long maxTimeoutForCommand, 
                TimeUnit timeUnit)

Thực hiện một lệnh shell adb, với nhiều tham số hơn để kiểm soát hành vi lệnh.

Thông số
cmd String : lệnh shell adb để chạy

maxTimeoutForCommand long : thời gian chờ tối đa để lệnh hoàn thành; đơn vị như được chỉ định trong timeUnit

timeUnit TimeUnit : đơn vị cho maxTimeToOutputShellResponse

Trả về
CommandResult

Ném
DeviceNotAvailableException

thực hiệnShellV2Command

public CommandResult executeShellV2Command (String cmd, 
                File pipeAsInput, 
                OutputStream pipeToOutput, 
                long maxTimeoutForCommand, 
                TimeUnit timeUnit, 
                int retryAttempts)

Thực hiện một lệnh shell adb, với nhiều tham số hơn để kiểm soát hành vi lệnh.

Thông số
cmd String : lệnh shell adb để chạy

pipeAsInput File : Một ERROR(/File) sẽ được chuyển thành đầu vào cho lệnh.

pipeToOutput OutputStream : ERROR(/OutputStream) trong đó đầu ra tiêu chuẩn sẽ được chuyển hướng.

maxTimeoutForCommand long : thời gian chờ tối đa để lệnh hoàn thành; đơn vị như được chỉ định trong timeUnit

timeUnit TimeUnit : đơn vị cho maxTimeToOutputShellResponse

retryAttempts int : số lần tối đa để thử lại lệnh nếu thất bại do ngoại lệ. DeviceNotResponsiveException sẽ bị ném nếu retryAttempts được thực hiện mà không thành công.

Trả về
CommandResult

Ném
DeviceNotAvailableException

fastbootWipePartition

public CommandResult fastbootWipePartition (String partition)

Phương pháp trợ giúp xóa phân vùng cho thiết bị.

Nếu getUseFastbootErase()true , thì việc xóa fastboot sẽ được sử dụng để xóa phân vùng. Sau đó, thiết bị phải tạo một hệ thống tập tin vào lần tiếp theo thiết bị khởi động. Mặt khác, định dạng fastboot được sử dụng sẽ tạo ra một hệ thống tệp mới trên thiết bị.

Dự kiến ​​sẽ được sử dụng khi thiết bị đã ở chế độ fastboot.

Thông số
partition String : phân vùng để xóa

Trả về
CommandResult CommandResult chứa đầu ra của lệnh

Ném
DeviceNotAvailableException

getActiveApexes

public  getActiveApexes ()

Lấy thông tin về APEX được kích hoạt trên thiết bị.

Trả về
ApexInfo ERROR(/Set) của ApexInfo hiện được kích hoạt trên thiết bị

Ném
DeviceNotAvailableException

get ALLS Settings

public  getAllSettings (String namespace)

Trả về cặp giá trị khóa của không gian tên được yêu cầu.

Thông số
namespace String : phải là một trong {"system", "an toàn", "toàn cầu"}

Trả về
bản đồ của các cặp giá trị chính. Null nếu không gian tên không được hỗ trợ.

Ném
DeviceNotAvailableException

get AllocationState

public DeviceAllocationState getAllocationState ()

Trả về trạng thái phân bổ hiện tại của thiết bị

Trả về
DeviceAllocationState

getAndroidId

public String getAndroidId (int userId)

Tìm và trả lại id android được liên kết với userId, null nếu không tìm thấy.

Thông số
userId int

Trả về
String

Ném
DeviceNotAvailableException

getAndroidIds

public  getAndroidIds ()

Tạo một bản đồ của các id android tìm thấy phù hợp với id người dùng. Không có bảo hiểm rằng mỗi id người dùng sẽ tìm thấy một id android được liên kết trong chức năng này để một số id người dùng có thể khớp với null.

Trả về
Bản đồ của id android tìm thấy phù hợp với id người dùng.

Ném
DeviceNotAvailableException

getApiLevel

public int getApiLevel ()

Nhận cấp API thiết bị. Mặc định là UNKNOWN_API_LEVEL .

Trả về
int một số nguyên chỉ mức API của thiết bị

Ném
DeviceNotAvailableException

getAppPackageInfo

public PackageInfo getAppPackageInfo (String packageName)

Lấy thông tin về một gói được cài đặt trên thiết bị.

Thông số
packageName String

Trả về
PackageInfo PackageInfo hoặc null nếu không thể lấy thông tin

Ném
DeviceNotAvailableException

getBasebandVersion

public String getBasebandVersion ()

Phương pháp thuận tiện để có phiên bản baseband (radio) của thiết bị này. Lấy phiên bản radio là thiết bị cụ thể, do đó, nó có thể không trả về thông tin chính xác cho tất cả các thiết bị. Phương pháp này dựa trên sự phù hợp của GSM.version.baseband để trả về thông tin phiên bản chính xác. Điều này không chính xác đối với một số thiết bị CDMA và phiên bản được trả lại ở đây có thể không khớp với phiên bản được báo cáo từ fastboot và có thể không trả về phiên bản cho radio CDMA. TL; DR phương thức này chỉ báo cáo phiên bản chính xác nếu thuộc tính GSM.version.baseband giống với phiên bản được trả về bởi fastboot getvar version-baseband .

Trả về
String phiên bản cơ sở String hoặc null nếu không thể xác định được (thiết bị không có chuỗi radio hoặc phiên bản không thể đọc được)

Ném
DeviceNotAvailableException

getBattery

public Integer getBattery ()

Trả về mức pin hiện tại của thiết bị hoặc Null nếu không có mức pin.

Trả về
Integer

getBootloaderVersion

public String getBootloaderVersion ()

Phương pháp thuận tiện để có được phiên bản bootloader của thiết bị này.

Sẽ cố gắng truy xuất phiên bản bộ nạp khởi động từ trạng thái hiện tại của thiết bị. (tức là nếu thiết bị ở chế độ fastboot, nó sẽ cố gắng truy xuất phiên bản từ fastboot)

Trả về
String phiên bản String bootloader hoặc null nếu không thể tìm thấy

Ném
DeviceNotAvailableException

getBugreport

public InputStreamSource getBugreport ()

Lấy một bugreport từ thiết bị.

The implementation of this is guaranteed to continue to work on a device without an sdcard (or where the sdcard is not yet mounted).

Returns
InputStreamSource An InputStreamSource which will produce the bugreport contents on demand. In case of failure, the InputStreamSource will produce an empty ERROR(/InputStream) .

getBugreportz

public InputStreamSource getBugreportz ()

Retrieves a bugreportz from the device. Zip format bugreport contains the main bugreport and other log files that are useful for debugging.

Only supported for 'adb version' > 1.0.36

Returns
InputStreamSource a InputStreamSource of the zip file containing the bugreportz, return null in case of failure.

getBuildAlias

public String getBuildAlias ()

Retrieve the alias of the build that the device is currently running.

Build alias is usually a more readable string than build id (typically a number for Nexus builds). For example, final Android 4.2 release has build alias JDQ39, and build id 573038

Returns
String the build alias or fall back to build id if it could not be retrieved

Throws
DeviceNotAvailableException

getBuildFlavor

public String getBuildFlavor ()

Retrieve the build flavor for the device.

Returns
String the build flavor or null if it could not be retrieved

Throws
DeviceNotAvailableException

getBuildId

public String getBuildId ()

Retrieve the build the device is currently running.

Returns
String the build id or IBuildInfo#UNKNOWN_BUILD_ID if it could not be retrieved

Throws
DeviceNotAvailableException

getBuildSigningKeys

public String getBuildSigningKeys ()

Returns the key type used to sign the device image

Typically Android devices may be signed with test-keys (like in AOSP) or release-keys (controlled by individual device manufacturers)

Returns
String The signing key if found, null otherwise.

Throws
DeviceNotAvailableException

getChildren

public String[] getChildren (String path)

Alternative to using IFileEntry that sometimes won't work because of permissions.

Parameters
path String : is the path on the device where to do the search

Returns
String[] Array of string containing all the file in a path on the device.

Throws
DeviceNotAvailableException

getCurrentUser

public int getCurrentUser ()

Return the id of the current running user.

Returns
int

Throws
DeviceNotAvailableException

getDeviceClass

public String getDeviceClass ()

Get the device class.

Returns
String the String device class.

getDeviceDate

public long getDeviceDate ()

Return the date of the device in millisecond since epoch.

Returns
long the date of the device in epoch format.

Throws
DeviceNotAvailableException

getDeviceDescriptor

public DeviceDescriptor getDeviceDescriptor ()

Return a DeviceDescriptor from the device information to get info on it without passing the actual device object.

Returns
DeviceDescriptor

getDeviceState

public TestDeviceState getDeviceState ()

Get the device's state.

Returns
TestDeviceState

getDeviceTimeOffset

public long getDeviceTimeOffset (Date date)

Helper to get the time difference between the device and a given ERROR(/Date) . Use Epoch time internally.

Parameters
date Date

Returns
long the difference in milliseconds

Throws
DeviceNotAvailableException

getEmulatorOutput

public InputStreamSource getEmulatorOutput ()

Get the stream of emulator stdout and stderr

Returns
InputStreamSource emulator output

getEmulatorProcess

public Process getEmulatorProcess ()

Return the Process corresponding to this emulator.

Returns
Process the Process or null

getExecuteShellCommandLog

public final File getExecuteShellCommandLog ()

The log that contains all the executeShellCommand(String) logs.

Returns
File

getExternalStoreFreeSpace

public long getExternalStoreFreeSpace ()

Helper method to determine amount of free space on device external storage.

Returns
long the amount of free space in KB

Throws
DeviceNotAvailableException

getFastbootPath

public String getFastbootPath ()

Returns the path of the fastboot binary being used. Still requires isFastbootEnabled() to be true, to have fastboot functions enabled.

Returns
String

getFastbootProductType

public String getFastbootProductType ()

Convenience method to get the product type of this device when its in fastboot mode.

This method should only be used if device should be in fastboot. Its a bit safer variant than the generic getProductType() method in this case, because ITestDevice will know to recover device into fastboot if device is in incorrect state or is unresponsive.

Returns
String the String product type name or null if it cannot be determined

Throws
DeviceNotAvailableException

getFastbootProductVariant

public String getFastbootProductVariant ()

Convenience method to get the product type of this device when its in fastboot mode.

This method should only be used if device should be in fastboot. Its a bit safer variant than the generic getProductType() method in this case, because ITestDevice will know to recover device into fastboot if device is in incorrect state or is unresponsive.

Returns
String the String product type name or null if it cannot be determined

Throws
DeviceNotAvailableException

getFastbootVersion

public String getFastbootVersion ()

Returns the version string of the fastboot binary being used. Or null if something goes wrong.

Returns
String

getFileEntry

public IFileEntry getFileEntry (String path)

Retrieve a reference to a remote file on device.

Parameters
path String : the file path to retrieve. Can be an absolute path or path relative to '/'. (ie both "/system" and "system" syntax is supported)

Returns
IFileEntry the IFileEntry or null if file at given path cannot be found

Throws
DeviceNotAvailableException

getFileEntry

public IFileEntry getFileEntry (FileListingService.FileEntry entry)

Unofficial helper to get a FileEntry from a non-root path. FIXME: Refactor the FileEntry system to have it available from any path. (even non root).

Parameters
entry FileListingService.FileEntry : a FileEntry not necessarily root as Ddmlib requires.

Returns
IFileEntry a FileEntryWrapper representing the FileEntry.

Throws
DeviceNotAvailableException

getIDevice

public IDevice getIDevice ()

Returns a reference to the associated ddmlib IDevice .

A new IDevice may be allocated by DDMS each time the device disconnects and reconnects from adb. Thus callers should not keep a reference to the IDevice , because that reference may become stale.

Returns
IDevice the IDevice

getInstalledPackageNames

public  getInstalledPackageNames ()

Fetch the application package names present on the device.

Returns
ERROR(/Set) of String package names currently installed on the device.

Throws
DeviceNotAvailableException

getIpAddress

public String getIpAddress ()

Gets the device's IP address.

Returns
String the device's IP address, or null if device has no IP address

Throws
DeviceNotAvailableException

getKeyguardState

public KeyguardControllerState getKeyguardState ()

Return an object to get the current state of the keyguard or null if not supported.

Returns
KeyguardControllerState a KeyguardControllerState containing a snapshot of the state of the keyguard and returns Null if the Keyguard query is not supported.

Throws
DeviceNotAvailableException

getLastExpectedRebootTimeMillis

public long getLastExpectedRebootTimeMillis ()

Returns the last time Tradefed APIs triggered a reboot in milliseconds since EPOCH as returned by System.currentTimeMillis() .

Returns
long

getLogcat

public InputStreamSource getLogcat ()

Grabs a snapshot stream of the logcat data.

Works in two modes:

  • If the logcat is currently being captured in the background, will return up to TestDeviceOptions#getMaxLogcatDataSize() bytes of the current contents of the background logcat capture
  • Otherwise, will return a static dump of the logcat data if device is currently responding

    Returns
    InputStreamSource

  • getLogcat

    public InputStreamSource getLogcat (int maxBytes)

    Grabs a snapshot stream of the last maxBytes of captured logcat data.

    Useful for cases when you want to capture frequent snapshots of the captured logcat data without incurring the potentially big disk space penalty of getting the entire getLogcat() snapshot.

    Parameters
    maxBytes int : the maximum amount of data to return. Should be an amount that can comfortably fit in memory

    Returns
    InputStreamSource

    getLogcatDump

    public InputStreamSource getLogcatDump ()

    Get a dump of the current logcat for device. Unlike getLogcat() , this method will always return a static dump of the logcat.

    Has the disadvantage that nothing will be returned if device is not reachable.

    Returns
    InputStreamSource a InputStreamSource of the logcat data. An empty stream is returned if fail to capture logcat data.

    getLogcatSince

    public InputStreamSource getLogcatSince (long date)

    Grabs a snapshot stream of captured logcat data starting the date provided. The time on the device should be used getDeviceDate() .

    Parameters
    date long : in millisecond since epoch format of when to start the snapshot until present. (can be be obtained using 'date +%s')

    Returns
    InputStreamSource

    getMacAddress

    public String getMacAddress ()

    Returns the MAC address of the device, null if it fails to query from the device.

    Returns
    String

    getMaxNumberOfRunningUsersSupported

    public int getMaxNumberOfRunningUsersSupported ()

    Get the maximum number of supported simultaneously running users. Defaults to 0.

    Returns
    int an integer indicating the number of simultaneously running users

    Throws
    DeviceNotAvailableException

    getMaxNumberOfUsersSupported

    public int getMaxNumberOfUsersSupported ()

    Get the maximum number of supported users. Defaults to 0.

    Returns
    int an integer indicating the number of supported users

    Throws
    DeviceNotAvailableException

    getMonitor

    public IDeviceStateMonitor getMonitor ()

    Return the IDeviceStateMonitor associated with device.

    Returns
    IDeviceStateMonitor

    getMountPoint

    public String getMountPoint (String mountName)

    Returns a mount point.

    Queries the device directly if the cached info in IDevice is not available.

    TODO: move this behavior to IDevice#getMountPoint(String)

    Parameters
    mountName String : the name of the mount point

    Returns
    String the mount point or null

    getMountPointInfo

    public ITestDevice.MountPointInfo getMountPointInfo (String mountpoint)

    Returns a MountPointInfo corresponding to the specified mountpoint path, or null if that path has nothing mounted or otherwise does not appear in /proc/mounts as a mountpoint.

    Parameters
    mountpoint String

    Returns
    ITestDevice.MountPointInfo A ERROR(/List) of MountPointInfo containing the information in "/proc/mounts"

    Throws
    DeviceNotAvailableException

    getMountPointInfo

    public  getMountPointInfo ()

    Returns a parsed version of the information in /proc/mounts on the device

    Returns
    A ERROR(/List) of MountPointInfo containing the information in "/proc/mounts"

    Throws
    DeviceNotAvailableException

    getOptions

    public TestDeviceOptions getOptions ()

    Fetch the test options for the device.

    Returns
    TestDeviceOptions TestDeviceOptions related to the device under test.

    getPartitionFreeSpace

    public long getPartitionFreeSpace (String partition)

    Helper method to determine amount of free space on device partition.

    Parameters
    partition String

    Returns
    long the amount of free space in KB

    Throws
    DeviceNotAvailableException

    getPrimaryUserId

    public Integer getPrimaryUserId ()

    Returns the primary user id.

    Returns
    Integer the userId of the primary user if there is one, and null if there is no primary user.

    Throws
    DeviceNotAvailableException

    getProcessByName

    public ProcessInfo getProcessByName (String processName)

    Helper method runs the "ps" command and returns USER, PID and NAME of the given process name.

    Parameters
    processName String

    Returns
    ProcessInfo ProcessInfo of given processName

    Throws
    DeviceNotAvailableException

    getProcessPid

    public String getProcessPid (String process)

    Returns the pid of the service or null if something went wrong.

    Parameters
    process String

    Returns
    String

    Throws
    DeviceNotAvailableException

    getProcesses

    public  getProcesses ()

    Helper method runs the "ps" command and returns list of USER, PID and NAME of all the processes.

    Returns
    List of ProcessInfo objects

    Throws
    DeviceNotAvailableException

    getProductType

    public String getProductType ()

    Convenience method to get the product type of this device.

    This method will work if device is in either adb or fastboot mode.

    Returns
    String the String product type name. Will not be null

    Throws
    DeviceNotAvailableException

    getProductVariant

    public String getProductVariant ()

    Convenience method to get the product variant of this device.

    This method will work if device is in either adb or fastboot mode.

    Returns
    String the String product variant name or null if it cannot be determined

    Throws
    DeviceNotAvailableException

    getProperty

    public String getProperty (String name)

    Retrieve the given property value from the device.

    Parameters
    name String : the property name

    Returns
    String the property value or null if it does not exist

    Throws
    DeviceNotAvailableException

    getRecoveryMode

    public ITestDevice.RecoveryMode getRecoveryMode ()

    Get the current recovery mode used for the device.

    Returns
    ITestDevice.RecoveryMode the current recovery mode used for the device.

    getScreenshot

    public InputStreamSource getScreenshot (int displayId)

    Grabs a screenshot from the device given display id. Format is PNG.

    TODO: extend the implementations above to support 'format' and 'rescale'

    Parameters
    displayId int : the display id of the screen to get screenshot from.

    Returns
    InputStreamSource a InputStreamSource of the screenshot in format, or null if the screenshot was not successful.

    Throws
    DeviceNotAvailableException

    getScreenshot

    public InputStreamSource getScreenshot (String format)

    Grabs a screenshot from the device. Recommended to use getScreenshot(format) instead with JPEG encoding for smaller size

    Parameters
    format String : supported PNG, JPEG

    Returns
    InputStreamSource a InputStreamSource of the screenshot in format, or null if the screenshot was not successful.

    Throws
    DeviceNotAvailableException

    getScreenshot

    public InputStreamSource getScreenshot (String format, 
                    boolean rescale)

    Grabs a screenshot from the device. Recommended to use getScreenshot(String) instead with JPEG encoding for smaller size.

    Parameters
    format String : supported PNG, JPEG

    rescale boolean : if screenshot should be rescaled to reduce the size of resulting image

    Returns
    InputStreamSource a InputStreamSource of the screenshot in format, or null if the screenshot was not successful.

    Throws
    DeviceNotAvailableException

    getScreenshot

    public InputStreamSource getScreenshot ()

    Grabs a screenshot from the device.

    Returns
    InputStreamSource a InputStreamSource of the screenshot in png format, or null if the screenshot was not successful.

    Throws
    DeviceNotAvailableException

    getSerialNumber

    public String getSerialNumber ()

    Convenience method to get serial number of this device.

    Returns
    String the String serial number

    getSetting

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

    Return the value of the requested setting. namespace must be one of: {"system", "secure", "global"}

    Parameters
    userId int

    namespace String

    key String

    Returns
    String the value associated with the namespace:key of a user. Null if not found.

    Throws
    DeviceNotAvailableException

    getSetting

    public String getSetting (String namespace, 
                    String key)

    See getSetting(int, String, String) and performed on system user.

    Parameters
    namespace String

    key String

    Returns
    String

    Throws
    DeviceNotAvailableException

    getSimOperator

    public String getSimOperator ()

    Return the SIM card operator or null if device is not available.

    Returns
    String

    getSimState

    public String getSimState ()

    Return the SIM card state or null if device is not available.

    Returns
    String

    getTombstones

    public  getTombstones ()

    Fetch and return the list of tombstones from the devices. Requires root.

    method is best-effort so if one tombstone fails to be pulled for any reason it will be missing from the list. Only a DeviceNotAvailableException will terminate the method early.

    Returns
    A list of tombstone files, empty if no tombstone.

    Throws
    DeviceNotAvailableException

    getTotalMemory

    public long getTotalMemory ()

    Returns total physical memory size in bytes or -1 in case of internal error

    Returns
    long

    getUninstallablePackageNames

    public  getUninstallablePackageNames ()

    Fetch the application package names that can be uninstalled. This is presently defined as non-system packages, and updated system packages.

    Returns
    ERROR(/Set) of uninstallable String package names currently installed on the device.

    Throws
    DeviceNotAvailableException

    getUseFastbootErase

    public boolean getUseFastbootErase ()

    Get whether to use fastboot erase or fastboot format to wipe a partition on the device.

    Returns
    boolean true if fastboot erase will be used or false if fastboot format will be used.

    getUserFlags

    public int getUserFlags (int userId)

    Find and return the flags of a given user. Flags are defined in "android.content.pm.UserInfo" class in Android Open Source Project.

    Parameters
    userId int

    Returns
    int the flags associated with the userId provided if found, -10000 in any other cases.

    Throws
    DeviceNotAvailableException

    getUserInfos

    public  getUserInfos ()

    Gets the Map of useId to UserInfo on the device. Will throw DeviceRuntimeException if output from device is not as expected.

    Returns
    the list of UserInfo objects.

    Throws
    DeviceNotAvailableException

    getUserSerialNumber

    public int getUserSerialNumber (int userId)

    Return the serial number associated to the userId if found, -10000 in any other cases.

    Parameters
    userId int

    Returns
    int

    Throws
    DeviceNotAvailableException

    handleAllocationEvent

    public IManagedTestDevice.DeviceEventResponse handleAllocationEvent (DeviceEvent event)

    Process the given DeviceEvent . May transition device to new state. Will inform the IDeviceMonitor of any state transitions.

    Process the DeviceEvent, which may or may not transition this device to a new allocation state.

    Parameters
    event DeviceEvent

    Returns
    IManagedTestDevice.DeviceEventResponse

    hasFeature

    public boolean hasFeature (String feature)

    Check if a feature is available on a device.

    Parameters
    feature String : which format should be "feature: ".

    Returns
    boolean True if feature is found, false otherwise.

    Throws
    DeviceNotAvailableException

    installPackage

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

    Install an Android package on device.

    Parameters
    packageFile File : the apk file to install

    reinstall boolean : true if a reinstall should be performed

    extraArgs String : optional extra arguments to pass. See 'adb shell pm install --help' for available options.

    Returns
    String a String with an error code, or null if success.

    Throws
    DeviceNotAvailableException

    installPackage

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

    Install an Android package on device.

    Note: Only use cases that requires explicit control of granting runtime permission at install time should call this function.

    Parameters
    packageFile File : the apk file to install

    reinstall boolean : true if a reinstall should be performed

    grantPermissions boolean : if all runtime permissions should be granted at install time

    extraArgs String : optional extra arguments to pass. See 'adb shell pm install --help' for available options.

    Returns
    String a String with an error code, or null if success.

    Throws
    DeviceNotAvailableException

    installPackageForUser

    public String installPackageForUser (File packageFile, 
                    boolean reinstall, 
                    int userId, 
                    String... extraArgs)

    Install an Android package on device for a given user.

    Parameters
    packageFile File : the apk file to install

    reinstall boolean : true if a reinstall should be performed

    userId int : the integer user id to install for.

    extraArgs String : optional extra arguments to pass. See 'adb shell pm install --help' for available options.

    Returns
    String a String with an error code, or null if success.

    Throws
    DeviceNotAvailableException

    installPackageForUser

    public String installPackageForUser (File packageFile, 
                    boolean reinstall, 
                    boolean grantPermissions, 
                    int userId, 
                    String... extraArgs)

    Install an Android package on device for a given user.

    Note: Only use cases that requires explicit control of granting runtime permission at install time should call this function.

    Parameters
    packageFile File : the apk file to install

    reinstall boolean : true if a reinstall should be performed

    grantPermissions boolean : if all runtime permissions should be granted at install time

    userId int : the integer user id to install for.

    extraArgs String : optional extra arguments to pass. See 'adb shell pm install --help' for available options.

    Returns
    String a String with an error code, or null if success.

    Throws
    DeviceNotAvailableException

    isAdbRoot

    public boolean isAdbRoot ()

    Returns
    boolean

    Throws
    DeviceNotAvailableException

    isAdbTcp

    public boolean isAdbTcp ()

    Returns
    boolean

    isDeviceEncrypted

    public boolean isDeviceEncrypted ()

    Returns if the device is encrypted.

    Returns
    boolean true if the device is encrypted.

    Throws
    DeviceNotAvailableException

    isDirectory

    public boolean isDirectory (String path)

    Return True if the path on the device is a directory, false otherwise.

    Parameters
    path String

    Returns
    boolean

    Throws
    DeviceNotAvailableException

    isEnableAdbRoot

    public boolean isEnableAdbRoot ()

    Returns
    boolean true if adb root should be enabled on device

    isEncryptionSupported

    public boolean isEncryptionSupported ()

    Returns if encryption is supported on the device.

    Returns
    boolean true if the device supports encryption.

    Throws
    DeviceNotAvailableException

    isExecutable

    public boolean isExecutable (String fullPath)

    Returns True if the file path on the device is an executable file, false otherwise.

    Parameters
    fullPath String

    Returns
    boolean

    Throws
    DeviceNotAvailableException

    isFastbootEnabled

    public boolean isFastbootEnabled ()

    Return if fastboot is available for the device.

    Returns
    boolean

    isHeadless

    public boolean isHeadless ()

    Return true if the device is headless (no screen), false otherwise.

    Returns
    boolean

    Throws
    DeviceNotAvailableException

    isMultiUserSupported

    public boolean isMultiUserSupported ()

    Determines if multi user is supported.

    Returns
    boolean true if multi user is supported, false otherwise

    Throws
    DeviceNotAvailableException

    isPackageInstalled

    public boolean isPackageInstalled (String packageName, 
                    String userId)

    Query the device for a given package name and given user id to check if it's currently installed or not for that user.

    Parameters
    packageName String : the package we are checking if it's installed.

    userId String : The user id we are checking the package is installed for. If null, primary user zero will be used.

    Returns
    boolean True if the package is reported as installed. False otherwise.

    Throws
    DeviceNotAvailableException

    isPackageInstalled

    public boolean isPackageInstalled (String packageName)

    Query the device for a given package name to check if it's currently installed or not.

    Parameters
    packageName String

    Returns
    boolean True if the package is reported as installed. False otherwise.

    Throws
    DeviceNotAvailableException

    isRuntimePermissionSupported

    public boolean isRuntimePermissionSupported ()

    Check whether platform on device supports runtime permission granting

    Returns
    boolean True if runtime permission are supported, false otherwise.

    Throws
    DeviceNotAvailableException

    isUserRunning

    public boolean isUserRunning (int userId)

    Check if a given user is running.

    Parameters
    userId int

    Returns
    boolean True if the user is running, false in every other cases.

    Throws
    DeviceNotAvailableException

    isUserSecondary

    public boolean isUserSecondary (int userId)

    Return whether the specified user is a secondary user according to it's flags.

    Parameters
    userId int

    Returns
    boolean true if the user is secondary, false otherwise.

    Throws
    DeviceNotAvailableException

    isWifiEnabled

    public boolean isWifiEnabled ()

    Test if wifi is enabled.

    Checks if wifi is enabled on device. Useful for asserting wifi status before tests that shouldn't run with wifi, eg mobile data tests.

    Returns
    boolean true if wifi is enabled. false if disabled

    Throws
    DeviceNotAvailableException

    listDisplayIds

    public  listDisplayIds ()

    Collect the list of available displays id on the device as reported by "dumpsys SurfaceFlinger".

    Returns
    The list of displays. Default always returns the default display 0.

    Throws
    DeviceNotAvailableException

    listUsers

    public  listUsers ()

    Gets the list of users on the device. Will throw DeviceRuntimeException if output from device is not as expected.

    Returns
    the list of user ids.

    Throws
    DeviceNotAvailableException

    logBugreport

    public boolean logBugreport (String dataName, 
                    ITestLogger listener)

    Helper method to take a bugreport and log it to the reporters.

    Parameters
    dataName String : name under which the bugreport will be reported.

    listener ITestLogger : an ITestLogger to log the bugreport.

    Returns
    boolean True if the logging was successful, false otherwise.

    logOnDevice

    public void logOnDevice (String tag, 
                    Log.LogLevel level, 
                    String format, 
                    Object... args)

    Log a message in the logcat of the device. This is a safe call that will not throw even if the logging fails.

    Parameters
    tag String : The tag under which we log our message in the logcat.

    level Log.LogLevel : The debug level of the message in the logcat.

    format String : The message format.

    args Object : the args to be replaced via String.format().

    nonBlockingReboot

    public void nonBlockingReboot ()

    Issues a command to reboot device and returns on command complete and when device is no longer visible to adb.

    Throws
    DeviceNotAvailableException

    postAdbRootAction

    public void postAdbRootAction ()

    Override if the device needs some specific actions to be taken after adb root and before the device is back online. Default implementation doesn't include any addition actions. adb root is not guaranteed to be enabled at this stage.

    Throws
    DeviceNotAvailableException

    postAdbUnrootAction

    public void postAdbUnrootAction ()

    Override if the device needs some specific actions to be taken after adb unroot and before the device is back online. Default implementation doesn't include any additional actions. adb root is not guaranteed to be disabled at this stage.

    Throws
    DeviceNotAvailableException

    postBootSetup

    public void postBootSetup ()

    Perform instructions to configure device for testing that after every boot.

    Should be called after device is fully booted/available

    In normal circumstances this method doesn't need to be called explicitly, as implementations should perform these steps automatically when performing a reboot.

    Where it may need to be called is when device reboots due to other events (eg when a fastboot update command has completed)

    Throws
    DeviceNotAvailableException

    postInvocationTearDown

    public void postInvocationTearDown ()

    Extra steps for device specific required clean up that will be executed after the invocation is done.

    preInvocationSetup

    public void preInvocationSetup ( IBuildInfo info)

    Extra steps for device specific required setup that will be executed on the device prior to the invocation flow.

    Parameters
    info IBuildInfo

    Throws
    DeviceNotAvailableException
    TargetSetupError

    pullDir

    public boolean pullDir (String deviceFilePath, 
                    File localDir)

    Recursively pull directory contents from device.

    Parameters
    deviceFilePath String : the absolute file path of the remote source

    localDir File : the local directory to pull files into

    Returns
    boolean true if file was pulled successfully. false otherwise.

    Throws
    DeviceNotAvailableException

    pullFile

    public boolean pullFile (String remoteFilePath, 
                    File localFile)

    Retrieves a file off device.

    Parameters
    remoteFilePath String : the absolute path to file on device.

    localFile File : the local file to store contents in. If non-empty, contents will be replaced.

    Returns
    boolean true if file was retrieved successfully. false otherwise.

    Throws
    DeviceNotAvailableException

    pullFile

    public File pullFile (String remoteFilePath)

    Retrieves a file off device, stores it in a local temporary ERROR(/File) , and returns that File .

    Parameters
    remoteFilePath String : the absolute path to file on device.

    Returns
    File A ERROR(/File) containing the contents of the device file, or null if the copy failed for any reason (including problems with the host filesystem)

    Throws
    DeviceNotAvailableException

    pullFileContents

    public String pullFileContents (String remoteFilePath)

    Retrieves a file off device, and returns the contents.

    Parameters
    remoteFilePath String : the absolute path to file on device.

    Returns
    String A String containing the contents of the device file, or null if the copy failed for any reason (including problems with the host filesystem)

    Throws
    DeviceNotAvailableException

    pullFileFromExternal

    public File pullFileFromExternal (String remoteFilePath)

    A convenience method to retrieve a file from the device's external storage, stores it in a local temporary ERROR(/File) , and return a reference to that File .

    Parameters
    remoteFilePath String : the path to file on device, relative to the device's external storage mountpoint

    Returns
    File A ERROR(/File) containing the contents of the device file, or null if the copy failed for any reason (including problems with the host filesystem)

    Throws
    DeviceNotAvailableException

    pushDir

    public boolean pushDir (File localFileDir, 
                    String deviceFilePath, 
                     excludedDirectories)

    Recursively push directory contents to device while excluding some directories that are filtered.

    Parameters
    localFileDir File : the local directory to push

    deviceFilePath String : the absolute file path of the remote destination

    excludedDirectories : Set of excluded directories names that shouldn't be pushed.

    Returns
    boolean true if file was pushed successfully. false otherwise.

    Throws
    DeviceNotAvailableException

    pushDir

    public boolean pushDir (File localFileDir, 
                    String deviceFilePath)

    Recursively push directory contents to device.

    Parameters
    localFileDir File : the local directory to push

    deviceFilePath String : the absolute file path of the remote destination

    Returns
    boolean true if file was pushed successfully. false otherwise.

    Throws
    DeviceNotAvailableException

    pushFile

    public boolean pushFile (File localFile, 
                    String remoteFilePath)

    Push a file to device

    Parameters
    localFile File : the local file to push

    remoteFilePath String : the remote destination absolute file path

    Returns
    boolean true if file was pushed successfully. false otherwise.

    Throws
    DeviceNotAvailableException

    pushString

    public boolean pushString (String contents, 
                    String remoteFilePath)

    Push file created from a string to device

    Parameters
    contents String : the contents of the file to push

    remoteFilePath String : the remote destination absolute file path

    Returns
    boolean true if string was pushed successfully. false otherwise.

    Throws
    DeviceNotAvailableException

    reboot

    public void reboot ()

    Reboots the device into adb mode.

    Blocks until device becomes available.

    Throws
    DeviceNotAvailableException

    rebootIntoBootloader

    public void rebootIntoBootloader ()

    Reboots the device into bootloader mode.

    Blocks until device is in bootloader mode.

    Throws
    DeviceNotAvailableException

    rebootIntoRecovery

    public void rebootIntoRecovery ()

    Reboots the device into adb recovery mode.

    Blocks until device enters recovery

    Throws
    DeviceNotAvailableException

    rebootUntilOnline

    public void rebootUntilOnline ()

    An alternate to reboot() that only blocks until device is online ie visible to adb.

    Throws
    DeviceNotAvailableException

    recoverDevice

    public void recoverDevice ()

    Attempts to recover device communication.

    Throws
    DeviceNotAvailableException if device is not longer available

    remountSystemWritable

    public void remountSystemWritable ()

    Make the system partition on the device writable. May reboot the device.

    Throws
    DeviceNotAvailableException

    removeAdmin

    public boolean removeAdmin (String componentName, 
                    int userId)

    Remove given device admin in given user and return true if it is successful, false otherwise.

    Parameters
    componentName String : of device admin to be removed.

    userId int : of user that the device admin lives in.

    Returns
    boolean True if it is successful, false otherwise.

    Throws
    DeviceNotAvailableException

    removeOwners

    public void removeOwners ()

    Remove all existing device profile owners with the best effort.

    Throws
    DeviceNotAvailableException

    removeUser

    public boolean removeUser (int userId)

    Remove a given user from the device.

    Parameters
    userId int : of the user to remove

    Returns
    boolean true if we were successful in removing the user, false otherwise.

    Throws
    DeviceNotAvailableException

    runInstrumentationTests

    public boolean runInstrumentationTests (IRemoteAndroidTestRunner runner, 
                    ITestLifeCycleReceiver... listeners)

    Convenience method for performing ERROR(/#runInstrumentationTests(com.android.ddmlib.testrunner.IRemoteAndroidTestRunner,Collection)) with one or more listeners passed as parameters.

    Parameters
    runner IRemoteAndroidTestRunner : the IRemoteAndroidTestRunner which runs the tests

    listeners ITestLifeCycleReceiver : the test result listener(s)

    Returns
    boolean true if test command completed. false if it failed to complete, but recovery succeeded

    Throws
    DeviceNotAvailableException

    runInstrumentationTests

    public boolean runInstrumentationTests (IRemoteAndroidTestRunner runner, 
                     listeners)

    Runs instrumentation tests, and provides device recovery.

    If connection with device is lost before test run completes, and recovery succeeds, all listeners will be informed of testRunFailed and "false" will be returned. The test command will not be rerun. It is left to callers to retry if necessary.

    If connection with device is lost before test run completes, and recovery fails, all listeners will be informed of testRunFailed and DeviceNotAvailableException will be thrown.

    Parameters
    runner IRemoteAndroidTestRunner : the IRemoteAndroidTestRunner which runs the tests

    listeners : the test result listeners

    Returns
    boolean true if test command completed. false if it failed to complete due to device communication exception, but recovery succeeded

    Throws
    DeviceNotAvailableException

    runInstrumentationTestsAsUser

    public boolean runInstrumentationTestsAsUser (IRemoteAndroidTestRunner runner, 
                    int userId, 
                    ITestLifeCycleReceiver... listeners)

    Same as ITestDevice#runInstrumentationTests(IRemoteAndroidTestRunner, ITestLifeCycleReceiver...) but runs the test for a given user.

    Parameters
    runner IRemoteAndroidTestRunner

    userId int

    listeners ITestLifeCycleReceiver

    Returns
    boolean

    Throws
    DeviceNotAvailableException

    runInstrumentationTestsAsUser

    public boolean runInstrumentationTestsAsUser (IRemoteAndroidTestRunner runner, 
                    int userId, 
                     listeners)

    Same as ERROR(ITestDevice#runInstrumentationTests(IRemoteAndroidTestRunner, Collection)/com.android.tradefed.device.ITestDevice#runInstrumentationTests(com.android.ddmlib.testrunner.IRemoteAndroidTestRunner,Collection) ITestDevice#runInstrumentationTests(IRemoteAndroidTestRunner, Collection)) but runs the test for the given user.

    Parameters
    runner IRemoteAndroidTestRunner

    userId int

    listeners

    Returns
    boolean

    Throws
    DeviceNotAvailableException

    setDate

    public void setDate (Date date)

    Sets the date on device

    Note: setting date on device requires root

    Parameters
    date Date : specify a particular date; will use host date if null

    Throws
    DeviceNotAvailableException

    setDeviceOwner

    public boolean setDeviceOwner (String componentName, 
                    int userId)

    Set a device admin component as device owner in given user.

    Parameters
    componentName String : of device admin to be device owner.

    userId int : of the user that the device owner lives in.

    Returns
    boolean True if it is successful, false otherwise.

    Throws
    DeviceNotAvailableException

    setDeviceState

    public void setDeviceState ( TestDeviceState deviceState)

    Update the device's state.

    Parameters
    deviceState TestDeviceState : the TestDeviceState

    setEmulatorOutputStream

    public void setEmulatorOutputStream ( SizeLimitedOutputStream output)

    For emulator set SizeLimitedOutputStream to log output

    Parameters
    output SizeLimitedOutputStream : to log the output

    setEmulatorProcess

    public void setEmulatorProcess (Process p)

    Sets the Process , when this device is an emulator.

    Parameters
    p Process

    setFastbootEnabled

    public void setFastbootEnabled (boolean fastbootEnabled)

    Set the fastboot option for the device. Should be set when device is first allocated.

    Parameters
    fastbootEnabled boolean : whether fastboot is available for the device or not

    setFastbootPath

    public void setFastbootPath (String fastbootPath)

    Sets the path to the fastboot binary that should be used. Still requires isFastbootEnabled() to be true, to have fastboot functions enabled.

    Parameters
    fastbootPath String

    setIDevice

    public void setIDevice (IDevice newDevice)

    Update the IDevice associated with this ITestDevice.

    The new IDevice must refer the same physical device as the current reference. This method will be called if DDMS has allocated a new IDevice

    Parameters
    newDevice IDevice : the IDevice

    setOptions

    public void setOptions ( TestDeviceOptions options)

    Set the TestDeviceOptions for the device

    Parameters
    options TestDeviceOptions

    setProperty

    public boolean setProperty (String propKey, 
                    String propValue)

    Sets the given property value on the device. Requires adb root is true.

    Parameters
    propKey String : The key targeted to be set.

    propValue String : The property value to be set.

    Returns
    boolean returns True if the setprop command was successful, False otherwise.

    Throws
    DeviceNotAvailableException

    setRecovery

    public void setRecovery ( IDeviceRecovery recovery)

    Set the IDeviceRecovery to use for this device. Should be set when device is first allocated.

    Parameters
    recovery IDeviceRecovery : the IDeviceRecovery

    setRecoveryMode

    public void setRecoveryMode ( ITestDevice.RecoveryMode mode)

    Set the current recovery mode to use for the device.

    Used to control what recovery method to use when a device communication problem is encountered. Its recommended to only use this method sparingly when needed (for example, when framework is down, etc

    Parameters
    mode ITestDevice.RecoveryMode : whether 'recover till online only' mode should be on or not.

    setSetting

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

    See setSetting(int, String, String, String) and performed on system user.

    Parameters
    namespace String

    key String

    value String

    Throws
    DeviceNotAvailableException

    setSetting

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

    Add a setting value to the namespace of a given user. Some settings will only be available after a reboot. namespace must be one of: {"system", "secure", "global"}

    Parameters
    userId int

    namespace String

    key String

    value String

    Throws
    DeviceNotAvailableException

    setUseFastbootErase

    public void setUseFastbootErase (boolean useFastbootErase)

    Set whether to use fastboot erase or fastboot format to wipe a partition on the device.

    Parameters
    useFastbootErase boolean : true if fastboot erase should be used or false if fastboot format should be used.

    startLogcat

    public void startLogcat ()

    Start capturing logcat output from device in the background.

    Will have no effect if logcat output is already being captured. Data can be later retrieved via getLogcat.

    When the device is no longer in use, stopLogcat() must be called.

    startLogcat() and stopLogcat() do not normally need to be called when within a TF invocation context, as the TF framework will start and stop logcat.

    startUser

    public boolean startUser (int userId)

    Starts a given user in the background if it is currently stopped. If the user is already running in the background, this method is a NOOP.

    Parameters
    userId int : of the user to start in the background

    Returns
    boolean true if the user was successfully started in the background.

    Throws
    DeviceNotAvailableException

    startUser

    public boolean startUser (int userId, 
                    boolean waitFlag)

    Starts a given user in the background if it is currently stopped. If the user is already running in the background, this method is a NOOP. Possible to provide extra flag to wait for the operation to have effect.

    Parameters
    userId int : of the user to start in the background

    waitFlag boolean : will make the command wait until user is started and unlocked.

    Returns
    boolean true if the user was successfully started in the background.

    Throws
    DeviceNotAvailableException

    stopEmulatorOutput

    public void stopEmulatorOutput ()

    Close and delete the emulator output.

    stopLogcat

    public void stopLogcat ()

    Stop capturing logcat output from device, and discard currently saved logcat data.

    Will have no effect if logcat output is not being captured.

    stopUser

    public boolean stopUser (int userId)

    Stops a given user. If the user is already stopped, this method is a NOOP. Cannot stop current and system user.

    Parameters
    userId int : of the user to stop.

    Returns
    boolean true if the user was successfully stopped.

    Throws
    DeviceNotAvailableException

    stopUser

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

    Stop a given user. Possible to provide extra flags to wait for the operation to have effect, and force terminate the user. Cannot stop current and system user.

    Parameters
    userId int : of the user to stop.

    waitFlag boolean : will make the command wait until user is stopped.

    forceFlag boolean : will force stop the user.

    Returns
    boolean true if the user was successfully stopped.

    Throws
    DeviceNotAvailableException

    switchToAdbTcp

    public String switchToAdbTcp ()

    Switch device to adb-over-tcp mode.

    Returns
    String the tcp serial number or null if device could not be switched

    Throws
    DeviceNotAvailableException

    switchToAdbUsb

    public boolean switchToAdbUsb ()

    Switch device to adb over usb mode.

    Returns
    boolean true if switch was successful, false otherwise.

    Throws
    DeviceNotAvailableException

    switchUser

    public boolean switchUser (int userId)

    Switch to another userId with a default timeout. switchUser(int, long) .

    Parameters
    userId int

    Returns
    boolean True if the new userId matches the userId provider. False otherwise.

    Throws
    DeviceNotAvailableException

    switchUser

    public boolean switchUser (int userId, 
                    long timeout)

    Switch to another userId with the provided timeout as deadline. Attempt to disable keyguard after user change is successful.

    Parameters
    userId int

    timeout long : to wait before returning false for switch-user failed.

    Returns
    boolean True if the new userId matches the userId provider. False otherwise.

    Throws
    DeviceNotAvailableException

    syncFiles

    public boolean syncFiles (File localFileDir, 
                    String deviceFilePath)

    Incrementally syncs the contents of a local file directory to device.

    Decides which files to push by comparing timestamps of local files with their remote equivalents. Only 'newer' or non-existent files will be pushed to device. Thus overhead should be relatively small if file set on device is already up to date.

    Hidden files (with names starting with ".") will be ignored.

    Example usage: syncFiles("/tmp/files", "/sdcard") will created a /sdcard/files directory if it doesn't already exist, and recursively push the /tmp/files contents to /sdcard/files.

    Parameters
    localFileDir File : the local file directory containing files to recursively push.

    deviceFilePath String : the remote destination absolute file path root. All directories in thos file path must be readable. ie pushing to /data/local/tmp when adb is not root will fail

    Returns
    boolean true if files were synced successfully. false otherwise.

    Throws
    DeviceNotAvailableException

    takeBugreport

    public Bugreport takeBugreport ()

    Take a bugreport and returns it inside a Bugreport object to handle it. Return null in case of issue.

    File referenced in the Bugreport object need to be cleaned via Bugreport#close() .

    Returns
    Bugreport

    unencryptDevice

    public boolean unencryptDevice ()

    Unencrypts the device.

    Unencrypting the device may cause device to be wiped and may reboot device. This method will block until device is available and ready for testing. Requires fastboot inorder to wipe the userdata partition.

    Returns
    boolean true if successful.

    Throws
    DeviceNotAvailableException

    uninstallPackage

    public String uninstallPackage (String packageName)

    Uninstall an Android package from device.

    Parameters
    packageName String : the Android package to uninstall

    Returns
    String a String with an error code, or null if success.

    Throws
    DeviceNotAvailableException

    unlockDevice

    public boolean unlockDevice ()

    Unlocks the device if the device is in an encrypted state.

    This method may restart the framework but will not call postBootSetup() . Therefore, the device might not be fully ready to be tested when this method returns.

    Returns
    boolean true if successful or if the device is unencrypted.

    Throws
    DeviceNotAvailableException

    waitForBootComplete

    public boolean waitForBootComplete (long timeOut)

    Blocks until the device's boot complete flag is set.

    Parameters
    timeOut long : time in msecs to wait for the flag to be set

    Returns
    boolean true if device's boot complete flag is set within the timeout

    Throws
    DeviceNotAvailableException

    waitForDeviceAvailable

    public void waitForDeviceAvailable ()

    Waits for the device to be responsive and available for testing. Uses default timeout.

    Throws
    DeviceNotAvailableException

    waitForDeviceAvailable

    public void waitForDeviceAvailable (long waitTime)

    Waits for the device to be responsive and available for testing.

    Parameters
    waitTime long : the time in ms to wait

    Throws
    DeviceNotAvailableException

    waitForDeviceInRecovery

    public boolean waitForDeviceInRecovery (long waitTime)

    Blocks for the device to be in the 'adb recovery' state (note this is distinct from IDeviceRecovery ).

    Parameters
    waitTime long : the time in ms to wait

    Returns
    boolean true if device boots into recovery before time expires. false otherwise

    waitForDeviceNotAvailable

    public boolean waitForDeviceNotAvailable (long waitTime)

    Blocks for the device to be not available ie missing from adb

    Parameters
    waitTime long : the time in ms to wait

    Returns
    boolean true if device becomes not available before time expires. false otherwise

    waitForDeviceOnline

    public void waitForDeviceOnline ()

    Blocks until device is visible via adb. Uses default timeout

    Note the device may not necessarily be responsive to commands on completion. Use waitForDeviceAvailable() instead.

    Throws
    DeviceNotAvailableException

    waitForDeviceOnline

    public void waitForDeviceOnline (long waitTime)

    Blocks until device is visible via adb.

    Note the device may not necessarily be responsive to commands on completion. Use waitForDeviceAvailable() instead.

    Parameters
    waitTime long : the time in ms to wait

    Throws
    DeviceNotAvailableException

    waitForDeviceShell

    public boolean waitForDeviceShell (long waitTime)

    Waits for device to be responsive to a basic adb shell command.

    Parameters
    waitTime long : the time in ms to wait

    Returns
    boolean true if device becomes responsive before waitTime elapses.

    Protected methods

    checkApiLevelAgainst

    protected void checkApiLevelAgainst (String feature, 
                    int strictMinLevel)

    Parameters
    feature String

    strictMinLevel int

    createRebootDeviceAction

    protected NativeDevice.RebootDeviceAction createRebootDeviceAction (String into)

    Create a RebootDeviceAction to be used when performing a reboot action.

    Parameters
    into String : the bootloader name to reboot into, or null to just reboot the device.

    Returns
    NativeDevice.RebootDeviceAction the created RebootDeviceAction .

    doAdbReboot

    protected void doAdbReboot (String into)

    Perform a adb reboot.

    Parameters
    into String : the bootloader name to reboot into, or null to just reboot the device.

    Throws
    DeviceNotAvailableException

    ensureRuntimePermissionSupported

    protected void ensureRuntimePermissionSupported ()

    helper method to throw exception if runtime permission isn't supported

    Throws
    DeviceNotAvailableException

    getBugreportInternal

    protected InputStreamSource getBugreportInternal ()

    Returns
    InputStreamSource

    getBugreportzInternal

    protected File getBugreportzInternal ()

    Internal Helper method to get the bugreportz zip file as a ERROR(/File) .

    Returns
    File

    getRunUtil

    protected IRunUtil getRunUtil ()

    Get the RunUtil instance to use.

    Returns
    IRunUtil

    internalGetProperty

    protected String internalGetProperty (String propName, 
                    String fastbootVar, 
                    String description)

    Fetch a device property, from the ddmlib cache by default, and falling back to either `adb shell getprop` or `fastboot getvar` depending on whether the device is in Fastboot or not.

    Parameters
    propName String : The name of the device property as returned by `adb shell getprop`

    fastbootVar String : The name of the equivalent fastboot variable to query. if null , fastboot query will not be attempted

    description String : A simple description of the variable. First letter should be capitalized.

    Returns
    String A string, possibly null or empty, containing the value of the given property

    Throws
    DeviceNotAvailableException

    isNewer

    protected boolean isNewer (File localFile, 
                    IFileEntry entry)

    Return true if local file is newer than remote file. IFileEntry being accurate to the minute, in case of equal times, the file will be considered newer.

    Parameters
    localFile File

    entry IFileEntry

    Returns
    boolean

    performDeviceAction

    protected boolean performDeviceAction (String actionDescription, 
                    com.android.tradefed.device.NativeDevice.DeviceAction action, 
                    int retryAttempts)

    Performs an action on this device. Attempts to recover device and optionally retry command if action fails.

    Parameters
    actionDescription String : a short description of action to be performed. Used for logging purposes only.

    action com.android.tradefed.device.NativeDevice.DeviceAction : the action to be performed

    retryAttempts int : the retry attempts to make for action if it fails but recovery succeeds

    Returns
    boolean true if action was performed successfully

    Throws
    DeviceNotAvailableException if recovery attempt fails or max attempts done without success

    postAdbReboot

    protected void postAdbReboot ()

    Possible extra actions that can be taken after a reboot.

    Throws
    DeviceNotAvailableException

    prePostBootSetup

    protected void prePostBootSetup ()

    Allows each device type (AndroidNativeDevice, TestDevice) to override this method for specific post boot setup.

    Throws
    DeviceNotAvailableException

    setClock

    protected void setClock (Clock clock)

    Set the Clock instance to use.

    Parameters
    clock Clock

    setLogStartDelay

    protected void setLogStartDelay (int delay)

    Sets the time in ms to wait before starting logcat capture for a online device.

    Parameters
    delay int : the delay in ms

    waitForDeviceNotAvailable

    protected void waitForDeviceNotAvailable (String operationDesc, 
                    long time)

    Parameters
    operationDesc String

    time long