INativeDevice
  public
  
  
  
  interface
  INativeDevice
  
  
  
| com.android.tradefed.device.INativeDevice | 
為 ddmlib IDevice 提供可靠且稍微高階的 API。
針對裝置指令重試可設定次數,並為無法回應的裝置提供裝置復原介面。
摘要
| 常數 | |
|---|---|
| int | UNKNOWN_API_LEVEL無法偵測 API 級別時的預設值 | 
| 公用方法 | |
|---|---|
| 
        abstract
        
        
        
        
        boolean | 
      checkApiLevelAgainstNextRelease(int strictMinLevel)
      檢查某項功能目前是否支援最小支援級別。 | 
| 
        abstract
        
        
        
        
        void | 
      clearLogcat()
      刪除任何累積的 Logcat 資料。 | 
| 
        abstract
        
        
        
        
        void | 
      deleteFile(String deviceFilePath)
      用於刪除裝置上檔案或目錄的輔助方法。 | 
| 
        abstract
        
        
        
        
        void | 
      deleteFile(String deviceFilePath, int userId)
      用於刪除裝置上檔案或目錄的輔助方法。 | 
| 
        abstract
        
        
        
        
        boolean | 
      deviceSoftRestarted(ProcessInfo prevSystemServerProcess)
      輔助方法,可比較目前的 system_server 與先前的 system_server  | 
| 
        abstract
        
        
        
        
        boolean | 
      deviceSoftRestartedSince(long utcEpochTime, TimeUnit timeUnit)
      輔助方法,用於檢查裝置是否在裝置和其  | 
| 
        abstract
        
        
        
        
        boolean | 
      disableAdbRoot()
      關閉 ADB 根目錄。 | 
| 
        abstract
        
        
        
        
        boolean | 
      doesFileExist(String deviceFilePath)
      輔助方法,用於判斷裝置上是否有檔案。 | 
| 
        abstract
        
        
        
        
        boolean | 
      enableAdbRoot()
      開啟 ADB 根目錄。 | 
| 
        abstract
        
        
        
        
        String | 
      executeAdbCommand(long timeout, String... commandArgs)
      輔助方法,可將 ADB 指令做為系統指令執行,並設有指定的逾時期限。 | 
| 
        abstract
        
        
        
        
        String | 
      executeAdbCommand(String... commandArgs)
      輔助方法,可將 ADB 指令視為系統指令執行。 | 
| 
        abstract
        
        
        
        
        String | 
      executeAdbCommand(long timeout, 輔助方法,可將 ADB 指令做為系統指令執行,並設有指定的逾時期限。 | 
| 
        abstract
        
        
        
        
        CommandResult | 
      executeFastbootCommand(long timeout, String... commandArgs)
      輔助方法,可將 fastboot 指令做為系統指令執行。 | 
| 
        abstract
        
        
        
        
        CommandResult | 
      executeFastbootCommand(String... commandArgs)
      輔助方法,可將 fastboot 指令做為系統指令執行,預設逾時時間為 2 分鐘。 | 
| 
        abstract
        
        
        
        
        CommandResult | 
      executeLongFastbootCommand(String... commandArgs)
      輔助方法,可將長時間執行的 fastboot 指令做為系統指令執行。 | 
| 
        abstract
        
        
        
        
        CommandResult | 
      executeLongFastbootCommand(輔助方法,可將長時間執行的 fastboot 指令做為系統指令,並搭配系統環境變數執行。 | 
| 
        abstract
        
        
        
        
        String | 
      executeShellCommand(String command)
      執行 ADB 殼層指令並將輸出內容傳回為  | 
| 
        abstract
        
        
        
        
        void | 
      executeShellCommand(String command, IShellOutputReceiver receiver, long maxTimeToOutputShellResponse, TimeUnit timeUnit, int retryAttempts)
      執行 ADB 殼層指令,並提供更多參數來控制指令行為。 | 
| 
        abstract
        
        
        
        
        void | 
      executeShellCommand(String command, IShellOutputReceiver receiver, long maxTimeoutForCommand, long maxTimeToOutputShellResponse, TimeUnit timeUnit, int retryAttempts)
      執行 ADB 殼層指令,並提供更多參數來控制指令行為。 | 
| 
        abstract
        
        
        
        
        void | 
      executeShellCommand(String command, IShellOutputReceiver receiver)
      執行指定的 ADB 殼層指令,如果指令失敗,則重試多次。 | 
| 
        abstract
        
        
        
        
        CommandResult | 
      executeShellV2Command(String command)
      輔助方法,可執行 ADB 殼層指令,並將結果傳回為  | 
| 
        abstract
        
        
        
        
        CommandResult | 
      executeShellV2Command(String command, OutputStream pipeToOutput)
      輔助方法,可執行 ADB 殼層指令,並將結果傳回為  | 
| 
        abstract
        
        
        
        
        CommandResult | 
      executeShellV2Command(String command, File pipeAsInput)
      輔助方法,可執行 ADB 殼層指令,並將結果傳回為  | 
| 
        abstract
        
        
        
        
        CommandResult | 
      executeShellV2Command(String command, long maxTimeoutForCommand, TimeUnit timeUnit, int retryAttempts)
      執行 ADB 殼層指令,並提供更多參數來控制指令行為。 | 
| 
        abstract
        
        
        
        
        CommandResult | 
      executeShellV2Command(String command, long maxTimeoutForCommand, TimeUnit timeUnit)
      執行 ADB 殼層指令,並提供更多參數來控制指令行為。 | 
| 
        abstract
        
        
        
        
        CommandResult | 
      executeShellV2Command(String command, File pipeAsInput, OutputStream pipeToOutput, long maxTimeoutForCommand, TimeUnit timeUnit, int retryAttempts)
      執行 ADB 殼層指令,並提供更多參數來控制指令行為。 | 
| 
        abstract
        
        
        
        
        CommandResult | 
      executeShellV2Command(String command, File pipeAsInput, OutputStream pipeToOutput, OutputStream pipeToError, long maxTimeoutForCommand, TimeUnit timeUnit, int retryAttempts)
      執行 ADB 殼層指令,並提供更多參數來控制指令行為。 | 
| 
        abstract
        
        
        
        
        CommandResult | 
      fastbootWipePartition(String partition)
      裝置分區的輔助方法。 | 
| 
        abstract
        
        
        
        
        int | 
      getApiLevel()
      取得裝置 API 級別。 | 
| 
        abstract
        
        
        
        
        String | 
      getBasebandVersion()
      取得此裝置基頻 (無線電) 版本的簡便方法。 | 
| 
        abstract
        
        
        
        
        Integer | 
      getBattery()
      傳回裝置目前的電池電量,如果無法取得電池電量,則傳回 Null。 | 
| 
        abstract
        
        
        
        
        boolean | 
      getBooleanProperty(String name, boolean defaultValue)
      傳回指定屬性的布林值。 | 
| 
        abstract
        
        
        
        
         | 
      getBootHistory()
      輔助方法會收集啟動時間和啟動原因的啟動記錄地圖。 | 
| 
        abstract
        
        
        
        
         | 
      getBootHistorySince(long utcEpochTime, TimeUnit timeUnit)
      輔助方法會收集啟動歷史地圖,其中包含從裝置的指定時間起算,自紀元起算的時間和時間單位,以及啟動時間和啟動原因。 | 
| 
        abstract
        
        
        
        
        String | 
      getBootloaderVersion()
      取得此裝置的系統啟動載入程式版本的便利方法。 | 
| 
        abstract
        
        
        
        
        String | 
      getBuildAlias()
      擷取裝置目前執行的版本別名。 | 
| 
        abstract
        
        
        
        
        String | 
      getBuildFlavor()
      擷取裝置的版本風味。 | 
| 
        abstract
        
        
        
        
        String | 
      getBuildId()
      擷取裝置目前執行的版本。 | 
| 
        abstract
        
        
        
        
        String | 
      getBuildSigningKeys()
      傳回用於簽署裝置映像檔的金鑰類型 一般而言,Android 裝置可能會使用測試金鑰 (例如 AOSP) 或發布金鑰 (由個別裝置製造商控制) 進行簽署 | 
| 
        abstract
        
        
        
        
        DeviceDescriptor | 
      getCachedDeviceDescriptor()
      如果已分配裝置,則會傳回快取的  | 
| 
        abstract
        
        
        
        
        DeviceDescriptor | 
      getCachedDeviceDescriptor(boolean shortDescriptor)
      如果已分配裝置,則會傳回快取的  | 
| 
        abstract
        
        
        
        
        String[] | 
      getChildren(String deviceFilePath)
      使用  | 
| 
        abstract
        
        
        
        
        AbstractConnection | 
      getConnection()
      傳回與裝置相關聯的連線。 | 
| 
        abstract
        
        
        
        
        String | 
      getDeviceClass()
      取得裝置類別。 | 
| 
        abstract
        
        
        
        
        long | 
      getDeviceDate()
      以 Epoch 紀元時間為起點,以毫秒為單位傳回裝置的日期。 | 
| 
        abstract
        
        
        
        
        DeviceDescriptor | 
      getDeviceDescriptor()
      從裝置資訊傳回  | 
| 
        abstract
        
        
        
        
        DeviceDescriptor | 
      getDeviceDescriptor(boolean shortDescriptor)
      從裝置資訊傳回  | 
| 
        abstract
        
        
        
        
        TestDeviceState | 
      getDeviceState()
      取得裝置狀態。 | 
| 
        abstract
        
        
        
        
        long | 
      getDeviceTimeOffset(Date date)
      輔助函式,用於取得裝置與指定  | 
| 
        abstract
        
        
        
        
        InputStreamSource | 
      getEmulatorOutput()
      取得模擬器 stdout 和 stderr 的串流 | 
| 
        abstract
        
        
        
        
        long | 
      getExternalStoreFreeSpace()
      輔助方法,用於判斷裝置外部儲存空間的可用空間大小。 | 
| 
        abstract
        
        
        
        
        String | 
      getFastbootProductType()
      在快速系統啟動模式下,取得裝置產品類型的便利方法。 | 
| 
        abstract
        
        
        
        
        String | 
      getFastbootProductVariant()
      在快速系統啟動模式下,取得裝置產品類型的便利方法。 | 
| 
        abstract
        
        
        
        
        String | 
      getFastbootSerialNumber()
      傳回快速啟動模式序號。 | 
| 
        abstract
        
        
        
        
        String | 
      getFastbootVariable(String variableName)
      從裝置擷取指定的 fastboot 變數值。 | 
| 
        abstract
        
        
        
        
        IFileEntry | 
      getFileEntry(String path)
      擷取裝置上遠端檔案的參照。 | 
| 
        abstract
        
        
        
        
        IDevice | 
      getIDevice()
      傳回相關 ddmlib  | 
| 
        abstract
        
        
        
        
        long | 
      getIntProperty(String name, long defaultValue)
      傳回裝置中指定屬性的整數值。 | 
| 
        abstract
        
        
        
        
        long | 
      getLastExpectedRebootTimeMillis()
      傳回 Tradefed API 上次觸發重新啟動作業的時間,以自  | 
| 
        abstract
        
        
        
        
        int | 
      getLaunchApiLevel()
      取得裝置首次啟動的 API 級別。 | 
| 
        abstract
        
        
        
        
        InputStreamSource | 
      getLogcat()
      擷取 logcat 資料的快照串流。 | 
| 
        abstract
        
        
        
        
        InputStreamSource | 
      getLogcat(int maxBytes)
      擷取最後  | 
| 
        abstract
        
        
        
        
        InputStreamSource | 
      getLogcatDump()
      取得裝置目前 Logcat 的傾印內容。 | 
| 
        abstract
        
        
        
        
        InputStreamSource | 
      getLogcatSince(long date)
      擷取指定日期起所擷取的 logcat 資料快照串流。 | 
| 
        abstract
        
        
        
        
        String | 
      getMountPoint(String mountName)
      傳回掛接點。 | 
| 
        abstract
        
        
        
        
        ITestDevice.MountPointInfo | 
      getMountPointInfo(String mountpoint)
      傳回與指定掛載點路徑相對應的  | 
| 
        abstract
        
        
        
        
         | 
      getMountPointInfo()
      傳回裝置上 /proc/mounts 中剖析版本的資訊 | 
| 
        abstract
        
        
        
        
        long | 
      getPartitionFreeSpace(String partition)
      輔助方法,用於判斷裝置分區的可用空間大小。 | 
| 
        abstract
        
        
        
        
        ProcessInfo | 
      getProcessByName(String processName)
      輔助方法會執行「pidof」和「stat」指令,並傳回  | 
| 
        abstract
        
        
        
        
        String | 
      getProcessPid(String process)
      傳回服務的 pid,如果發生錯誤則傳回 null。 | 
| 
        abstract
        
        
        
        
        String | 
      getProductType()
      取得此裝置產品類型的便利方法。 | 
| 
        abstract
        
        
        
        
        String | 
      getProductVariant()
      取得此裝置產品子類的便利方法。 | 
| 
        abstract
        
        
        
        
        String | 
      getProperty(String name)
      從裝置中擷取指定的屬性值。 | 
| 
        abstract
        
        
        
        
        ITestDevice.RecoveryMode | 
      getRecoveryMode()
      取得裝置目前使用的復原模式。 | 
| 
        abstract
        
        
        
        
        String | 
      getSerialNumber()
      取得此裝置序號的便利方法。 | 
| 
        abstract
        
        
        
        
         | 
      getTombstones()
      從裝置擷取並傳回墓碑清單。 | 
| 
        abstract
        
        
        
        
        long | 
      getTotalMemory()
      以位元組為單位傳回實體記憶體總大小,或在發生內部錯誤時傳回 -1 | 
| 
        
        default
        
        
        
        String | 
      getTrackingSerial()
      為了管理裝置,請取得用於追蹤裝置的序號。 | 
| 
        abstract
        
        
        
        
        boolean | 
      getUseFastbootErase()
      取得是否要使用 fastboot erase 或 fastboot format 來清除裝置上的分區。 | 
| 
        abstract
        
        
        
        
        boolean | 
      isAdbRoot()
       | 
| 
        abstract
        
        
        
        
        boolean | 
      isAdbTcp()
       | 
| 
        abstract
        
        
        
        
        boolean | 
      isAppEnumerationSupported()
      檢查裝置上的平台是否支援應用程式列舉 | 
| 
        abstract
        
        
        
        
        boolean | 
      isBypassLowTargetSdkBlockSupported()
      檢查裝置平台是否支援在應用程式安裝時略過低目標 SDK 封鎖機制 | 
| 
        abstract
        
        
        
        
        boolean | 
      isDebugfsMounted()
      檢查是否已掛載 debugfs。 | 
| 
        abstract
        
        
        
        
        boolean | 
      isDeviceEncrypted()
      傳回裝置是否受到加密保護。 | 
| 
        abstract
        
        
        
        
        boolean | 
      isDirectory(String deviceFilePath)
      如果裝置上的路徑是目錄,則傳回 True,否則傳回 false。 | 
| 
        abstract
        
        
        
        
        boolean | 
      isEncryptionSupported()
      傳回裝置是否支援加密功能。 | 
| 
        abstract
        
        
        
        
        boolean | 
      isExecutable(String fullPath)
      如果裝置上的檔案路徑是可執行檔案,則傳回「是」;否則傳回「否」。 | 
| 
        abstract
        
        
        
        
        boolean | 
      isHeadless()
      如果裝置是無頭裝置 (沒有螢幕),則傳回「是」,否則傳回「否」。 | 
| 
        abstract
        
        
        
        
        boolean | 
      isRuntimePermissionSupported()
      檢查裝置上的平台是否支援授予執行階段權限 | 
| 
        abstract
        
        
        
        
        boolean | 
      isStateBootloaderOrFastbootd()
      如果裝置位於  | 
| 
        abstract
        
        
        
        
        boolean | 
      logAnrs(ITestLogger logger)
      從裝置收集並記錄 ANR。 | 
| 
        abstract
        
        
        
        
        void | 
      logOnDevice(String tag, Log.LogLevel level, String format, Object... args)
      在裝置的 logcat 中記錄訊息。 | 
| 
        abstract
        
        
        
        
        void | 
      mountDebugfs()
      掛接 debugfs。 | 
| 
        abstract
        
        
        
        
        void | 
      nonBlockingReboot()
      發出指令重新啟動裝置,並在指令完成及裝置不再對 ADB 可見時傳回。 | 
| 
        abstract
        
        
        
        
        void | 
      postBootSetup()
      執行操作說明,設定裝置以便每次啟動後進行測試。 | 
| 
        
        default
        
        
        
        void | 
      postInvocationTearDown()
      
      這個方法已淘汰。
    請改用  | 
| 
        abstract
        
        
        
        
        void | 
      postInvocationTearDown(Throwable invocationException)
      針對裝置特定的必要清理作業,在呼叫完成後執行額外步驟。 | 
| 
        
        default
        
        
        
        void | 
      preInvocationSetup(IBuildInfo info, MultiMap<String, String> attributes)
      裝置專屬的額外步驟,必須在叫用流程前在裝置上執行。 | 
| 
        abstract
        
        
        
        
        boolean | 
      pullDir(String deviceFilePath, File localDir)
      遞迴式從裝置中提取目錄內容。 | 
| 
        abstract
        
        
        
        
        boolean | 
      pullDir(String deviceFilePath, File localDir, int userId)
      遞迴式從裝置中提取目錄內容。 | 
| 
        abstract
        
        
        
        
        File | 
      pullFile(String remoteFilePath, int userId)
      從裝置中擷取檔案,將檔案儲存在本機暫存的  | 
| 
        abstract
        
        
        
        
        File | 
      pullFile(String remoteFilePath)
      從裝置中擷取檔案,將檔案儲存在本機暫存的  | 
| 
        abstract
        
        
        
        
        boolean | 
      pullFile(String remoteFilePath, File localFile)
      從裝置中擷取檔案。 | 
| 
        abstract
        
        
        
        
        boolean | 
      pullFile(String remoteFilePath, File localFile, int userId)
      從裝置中擷取檔案。 | 
| 
        abstract
        
        
        
        
        String | 
      pullFileContents(String remoteFilePath)
      從裝置中擷取檔案,並傳回內容。 | 
| 
        abstract
        
        
        
        
        File | 
      pullFileFromExternal(String remoteFilePath)
      方便方法,可從裝置的外部儲存空間擷取檔案,將檔案儲存在本機暫時  | 
| 
        abstract
        
        
        
        
        boolean | 
      pushDir(File localDir, String deviceFilePath, int userId)
      遞迴地將目錄內容推送至裝置。 | 
| 
        abstract
        
        
        
        
        boolean | 
      pushDir(File localDir, String deviceFilePath, 遞迴將目錄內容推送至裝置,同時排除部分已篩選的目錄。 | 
| 
        abstract
        
        
        
        
        boolean | 
      pushDir(File localDir, String deviceFilePath)
      遞迴地將目錄內容推送至裝置。 | 
| 
        abstract
        
        
        
        
        boolean | 
      pushFile(File localFile, String deviceFilePath, boolean evaluateContentProviderNeeded)
      
 | 
| 
        abstract
        
        
        
        
        boolean | 
      pushFile(File localFile, String deviceFilePath)
      將檔案推送至裝置。 | 
| 
        abstract
        
        
        
        
        boolean | 
      pushFile(File localFile, String deviceFilePath, int userId)
      將檔案推送至裝置。 | 
| 
        abstract
        
        
        
        
        boolean | 
      pushString(String contents, String deviceFilePath)
      將從字串建立的檔案推送至裝置 | 
| 
        abstract
        
        
        
        
        void | 
      reboot()
      重新啟動裝置並進入 ADB 模式。 | 
| 
        abstract
        
        
        
        
        void | 
      reboot(String reason)
      將裝置重新啟動至 ADB 模式,並使用指定的  | 
| 
        abstract
        
        
        
        
        void | 
      rebootIntoBootloader()
      重新啟動裝置並進入系統啟動載入程式模式。 | 
| 
        abstract
        
        
        
        
        void | 
      rebootIntoFastbootd()
      將裝置重新啟動為快速系統啟動模式。 | 
| 
        abstract
        
        
        
        
        void | 
      rebootIntoRecovery()
      重新啟動裝置,進入 ADB 復原模式。 | 
| 
        abstract
        
        
        
        
        void | 
      rebootIntoSideload(boolean autoReboot)
      將裝置重新啟動至 ADB 側載模式 (請注意,這是復原模式下的特殊模式) 阻斷裝置進入側載模式 | 
| 
        abstract
        
        
        
        
        void | 
      rebootIntoSideload()
      將裝置重新啟動至 ADB 側載模式 (請注意,這是復原模式下的特殊模式) 阻斷裝置進入側載模式 | 
| 
        abstract
        
        
        
        
        void | 
      rebootUntilOnline()
      
 | 
| 
        abstract
        
        
        
        
        void | 
      rebootUntilOnline(String reason)
      
 | 
| 
        abstract
        
        
        
        
        void | 
      rebootUserspace()
      僅重新啟動裝置的使用者空間部分。 | 
| 
        abstract
        
        
        
        
        void | 
      rebootUserspaceUntilOnline()
      這是  | 
| 
        abstract
        
        
        
        
        void | 
      remountSystemReadOnly()
      將裝置上的系統分區設為唯讀。 | 
| 
        abstract
        
        
        
        
        void | 
      remountSystemWritable()
      讓裝置上的系統分區可供寫入。 | 
| 
        abstract
        
        
        
        
        void | 
      remountVendorReadOnly()
      將裝置上的供應商分區設為唯讀。 | 
| 
        abstract
        
        
        
        
        void | 
      remountVendorWritable()
      讓裝置上的供應商分區可供寫入。 | 
| 
        abstract
        
        
        
        
        boolean | 
      runInstrumentationTests(IRemoteAndroidTestRunner runner, ITestLifeCycleReceiver... listeners)
      方便方法,可使用一或多個以參數傳遞的事件監聽器執行  | 
| 
        abstract
        
        
        
        
        boolean | 
      runInstrumentationTests(IRemoteAndroidTestRunner runner, 執行檢測設備測試,並提供裝置復原功能。 | 
| 
        abstract
        
        
        
        
        boolean | 
      runInstrumentationTestsAsUser(IRemoteAndroidTestRunner runner, int userId,  | 
| 
        abstract
        
        
        
        
        boolean | 
      runInstrumentationTestsAsUser(IRemoteAndroidTestRunner runner, int userId, ITestLifeCycleReceiver... listeners)
      與  | 
| 
        abstract
        
        
        
        
        void | 
      setDate(Date date)
      設定裝置上的日期 注意:在裝置上設定日期需要取得 root 權限 | 
| 
        abstract
        
        
        
        
        void | 
      setOptions(TestDeviceOptions options)
      為裝置設定  | 
| 
        abstract
        
        
        
        
        boolean | 
      setProperty(String propKey, String propValue)
      在裝置上設定指定的屬性值。 | 
| 
        abstract
        
        
        
        
        void | 
      setRecovery(IDeviceRecovery recovery)
      設定要用於這部裝置的  | 
| 
        abstract
        
        
        
        
        void | 
      setRecoveryMode(ITestDevice.RecoveryMode mode)
      設定裝置目前要使用的復原模式。 | 
| 
        abstract
        
        
        
        
        void | 
      setTrackingSerial(String trackingSerial)
      為了管理裝置,請追蹤我們用於參照裝置的序號。 | 
| 
        abstract
        
        
        
        
        void | 
      setUseFastbootErase(boolean useFastbootErase)
      設定是否要使用 fastboot erase 或 fastboot format 來清除裝置上的分區。 | 
| 
        abstract
        
        
        
        
        void | 
      startLogcat()
      開始在背景擷取裝置的 Logcat 輸出內容。 | 
| 
        abstract
        
        
        
        
        boolean | 
      startTradeInModeTesting(int timeoutMs)
      啟用測試換購模式。 | 
| 
        abstract
        
        
        
        
        void | 
      stopEmulatorOutput()
      關閉並刪除模擬器輸出內容。 | 
| 
        abstract
        
        
        
        
        void | 
      stopLogcat()
      停止擷取裝置的 Logcat 輸出內容,並捨棄目前儲存的 Logcat 資料。 | 
| 
        abstract
        
        
        
        
        void | 
      stopTradeInModeTesting()
      停止測試換購模式。 | 
| 
        abstract
        
        
        
        
        String | 
      switchToAdbTcp()
      將裝置切換至 ADB-over-TCP 模式。 | 
| 
        abstract
        
        
        
        
        boolean | 
      switchToAdbUsb()
      將裝置切換至透過 USB 的 ADB 模式。 | 
| 
        abstract
        
        
        
        
        boolean | 
      syncFiles(File localFileDir, String deviceFilePath)
      將本機檔案目錄的內容以遞增方式同步至裝置。 | 
| 
        abstract
        
        
        
        
        boolean | 
      unlockDevice()
      如果裝置處於加密狀態,則解鎖裝置。 | 
| 
        abstract
        
        
        
        
        void | 
      unmountDebugfs()
      卸載 debugfs。 | 
| 
        abstract
        
        
        
        
        boolean | 
      waitForBootComplete(long timeOut)
      阻斷,直到裝置的啟動完成標記設定為止。 | 
| 
        abstract
        
        
        
        
        boolean | 
      waitForDeviceAvailable()
      等待裝置回應並可進行測試。 | 
| 
        abstract
        
        
        
        
        boolean | 
      waitForDeviceAvailable(long waitTime)
      等待裝置回應並可進行測試。 | 
| 
        abstract
        
        
        
        
        boolean | 
      waitForDeviceAvailableInRecoverPath(long waitTime)
      等待裝置回應並可供使用,但不考慮復原路徑。 | 
| 
        abstract
        
        
        
        
        void | 
      waitForDeviceBootloader()
      直到裝置可透過 fastboot 顯示時才會解除封鎖。 | 
| 
        abstract
        
        
        
        
        boolean | 
      waitForDeviceInRecovery(long waitTime)
      裝置必須處於「adb recovery」狀態才能執行的區塊 (請注意,這與  | 
| 
        abstract
        
        
        
        
        boolean | 
      waitForDeviceInSideload(long waitTime)
      裝置必須處於「adb sideload」狀態才能進行封鎖 | 
| 
        abstract
        
        
        
        
        boolean | 
      waitForDeviceNotAvailable(long waitTime)
      無法使用的裝置區塊,例如 ADB 中缺少的區塊 | 
| 
        abstract
        
        
        
        
        void | 
      waitForDeviceOnline()
      直到裝置可透過 ADB 查看為止。 | 
| 
        abstract
        
        
        
        
        void | 
      waitForDeviceOnline(long waitTime)
      直到裝置可透過 ADB 查看為止。 | 
| 
        abstract
        
        
        
        
        boolean | 
      waitForDeviceShell(long waitTime)
      等待裝置回應基本 ADB 殼層指令。 | 
常數
UNKNOWN_API_LEVEL
public static final int UNKNOWN_API_LEVEL
無法偵測 API 級別時的預設值
常數值:-1 (0xffffffff)
公用方法
checkApiLevelAgainstNextRelease
public abstract boolean checkApiLevelAgainstNextRelease (int strictMinLevel)
確認某項功能目前是否支援最小支援級別。這個方法會在 API 級別提升前,考量尚未發布的功能。
| 參數 | |
|---|---|
| strictMinLevel | int:支援該功能的嚴格最小可能版本。 | 
| 傳回 | |
|---|---|
| boolean | 如果系統支援該等級,則為 True。否則為 False。 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
clearLogcat
public abstract void clearLogcat ()
刪除所有累積的 Logcat 資料。
 這在您想確保 ITestDevice.getLogcat() 只會傳回特定時間點後產生的記錄資料 (例如刷新新裝置版本後) 時很有用。
deleteFile
public abstract void deleteFile (String deviceFilePath)
用於刪除裝置上檔案或目錄的輔助方法。
| 參數 | |
|---|---|
| deviceFilePath | String:裝置上檔案的絕對路徑。 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
deleteFile
public abstract void deleteFile (String deviceFilePath, 
                int userId)用於刪除裝置上檔案或目錄的輔助方法。
| 參數 | |
|---|---|
| deviceFilePath | String:裝置上檔案的絕對路徑。 | 
| userId | int:要從中刪除的使用者 ID | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
deviceSoftRestarted
public abstract boolean deviceSoftRestarted (ProcessInfo prevSystemServerProcess)
輔助方法,可比較目前的 system_server 與先前的 system_server ProcessInfo,檢查裝置是否已軟重啟。使用 getProcessByName(String) 可取得 ProcessInfo。
| 參數 | |
|---|---|
| prevSystemServerProcess | ProcessInfo:先前的 system_server 程序ProcessInfo。 | 
| 傳回 | |
|---|---|
| boolean | true裝置是否已軟體重新啟動 | 
| 擲回 | |
|---|---|
| RuntimeException | 裝置是否有異常的啟動原因 | 
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
deviceSoftRestartedSince
public abstract boolean deviceSoftRestartedSince (long utcEpochTime, 
                TimeUnit timeUnit)輔助方法,用於檢查裝置和其 ERROR(/TimeUnit) 自 Epoch 紀元時間起算的 UTC 時間是否已軟重啟。軟重啟是指在裝置強制重啟 (例如:要求重啟) 之外重新啟動 system_server。您可以使用 getDeviceDate() 方法,取得目前裝置的 utcEpochTime 以毫秒為單位。
| 參數 | |
|---|---|
| utcEpochTime | long:裝置時間,從紀元時間起算的秒數。 | 
| timeUnit | TimeUnit:指定 utcEpochTime 的時間單位TimeUnit。 | 
| 傳回 | |
|---|---|
| boolean | true裝置是否已軟體重新啟動 | 
| 擲回 | |
|---|---|
| RuntimeException | 裝置是否有異常的啟動原因 | 
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
disableAdbRoot
public abstract boolean disableAdbRoot ()
關閉 ADB 根目錄。
停用 ADB 根目錄可能會導致裝置與 ADB 斷開連線。這個方法會在裝置可用之前阻斷。
| 傳回 | |
|---|---|
| boolean | 成功時會傳回 true。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
doesFileExist
public abstract boolean doesFileExist (String deviceFilePath)
輔助方法,用於判斷裝置上是否有檔案。
| 參數 | |
|---|---|
| deviceFilePath | String:要檢查的裝置檔案絕對路徑 | 
| 傳回 | |
|---|---|
| boolean | 如果檔案存在,則傳回 true;否則傳回false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
enableAdbRoot
public abstract boolean enableAdbRoot ()
開啟 ADB 根目錄。如果「enable-root」設定為「false」,系統會記錄訊息,並在不啟用 root 的情況下傳回。
啟用 ADB 根目錄可能會導致裝置與 ADB 中斷連線。這個方法會在裝置可用之前阻斷。
| 傳回 | |
|---|---|
| boolean | 成功時會傳回 true。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeAdbCommand
public abstract String executeAdbCommand (long timeout, 
                String... commandArgs)輔助方法,可將 ADB 指令做為系統指令執行,並設有指定的逾時期限。
盡可能使用 executeShellCommand(String),因為該方法可提供更佳的失敗偵測和效能。
| 參數 | |
|---|---|
| timeout | long:裝置被視為無回應之前的時間 (以毫秒為單位),如果沒有逾時時間,則為 0L | 
| commandArgs | String:要執行的 ADB 指令和引數 | 
| 傳回 | |
|---|---|
| String | 指令的 stdout。 null,如果指令無法執行。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeAdbCommand
public abstract String executeAdbCommand (String... commandArgs)
輔助方法,可將 ADB 指令做為系統指令執行。
 盡可能使用 executeShellCommand(String),因為該方法可提供更佳的失敗偵測和效能。
| 參數 | |
|---|---|
| commandArgs | String:要執行的 ADB 指令和引數 | 
| 傳回 | |
|---|---|
| String | 指令的 stdout。 null,如果指令無法執行。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeAdbCommand
public abstract String executeAdbCommand (long timeout, 
                 envMap, 
                String... commandArgs) 輔助方法,可將 ADB 指令做為系統指令執行,並設有指定的逾時期限。
盡可能使用 executeShellCommand(String),因為該方法可提供更佳的失敗偵測和效能。
| 參數 | |
|---|---|
| timeout | long:裝置被視為無回應之前的時間 (以毫秒為單位),如果沒有逾時時間,則為 0L | 
| envMap | :要為指令設定的環境 | 
| commandArgs | String:要執行的 ADB 指令和引數 | 
| 傳回 | |
|---|---|
| String | 指令的 stdout。 null,如果指令無法執行。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeFastbootCommand
public abstract CommandResult executeFastbootCommand (long timeout, String... commandArgs)
輔助方法,可將 fastboot 指令做為系統指令執行。
應在裝置已進入快速系統啟動模式時使用。
| 參數 | |
|---|---|
| timeout | long:指令到期前剩餘的時間 (以毫秒為單位) | 
| commandArgs | String:要執行的 Fastboot 指令和引數 | 
| 傳回 | |
|---|---|
| CommandResult | 包含指令輸出的 CommandResult | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeFastbootCommand
public abstract CommandResult executeFastbootCommand (String... commandArgs)
輔助方法,可將 fastboot 指令做為系統指令執行,預設逾時時間為 2 分鐘。
應在裝置已進入快速系統啟動模式時使用。
| 參數 | |
|---|---|
| commandArgs | String:要執行的 Fastboot 指令和引數 | 
| 傳回 | |
|---|---|
| CommandResult | 包含指令輸出的 CommandResult | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeLongFastbootCommand
public abstract CommandResult executeLongFastbootCommand (String... commandArgs)
輔助方法,可將長時間執行的 fastboot 指令視為系統指令執行。
 與 executeFastbootCommand(String) 相同,但使用較長的逾時時間。
| 參數 | |
|---|---|
| commandArgs | String:要執行的 Fastboot 指令和引數 | 
| 傳回 | |
|---|---|
| CommandResult | 包含指令輸出的 CommandResult | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeLongFastbootCommand
public abstract CommandResult executeLongFastbootCommand (envVarMap, String... commandArgs) 
輔助方法,可將長時間執行的 fastboot 指令做為系統指令,並搭配系統環境變數執行。
與 executeFastbootCommand(String) 相同,但使用較長的逾時時間。
| 參數 | |
|---|---|
| envVarMap | :fastboot 指令執行時使用的系統環境變數 | 
| commandArgs | String:要執行的 Fastboot 指令和引數 | 
| 傳回 | |
|---|---|
| CommandResult | 包含指令輸出的 CommandResult | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeShellCommand
public abstract String executeShellCommand (String command)
執行 ADB 殼層指令並以 String 格式傳回輸出的輔助方法。
| 參數 | |
|---|---|
| command | String:要執行的 ADB 殼層指令 | 
| 傳回 | |
|---|---|
| String | 殼層輸出 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeShellCommand
public abstract void executeShellCommand (String command, 
                IShellOutputReceiver receiver, 
                long maxTimeToOutputShellResponse, 
                TimeUnit timeUnit, 
                int retryAttempts)執行 ADB 殼層指令,並提供更多參數來控制指令行為。
| 參數 | |
|---|---|
| command | String:要執行的 ADB 殼層指令 | 
| receiver | IShellOutputReceiver:要將殼層輸出內容導向至IShellOutputReceiver。 | 
| maxTimeToOutputShellResponse | long:指令允許不輸出任何回應的時間上限;單位如timeUnit所指定 | 
| timeUnit | TimeUnit:maxTimeToOutputShellResponse的單位 | 
| retryAttempts | int:如果指令因例外狀況而失敗,則重試指令的次數上限。如果執行 retryAttempts 失敗,系統會擲回 DeviceNotResponsiveException。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeShellCommand
public abstract void executeShellCommand (String command, 
                IShellOutputReceiver receiver, 
                long maxTimeoutForCommand, 
                long maxTimeToOutputShellResponse, 
                TimeUnit timeUnit, 
                int retryAttempts)執行 ADB 殼層指令,並提供更多參數來控制指令行為。
| 參數 | |
|---|---|
| command | String:要執行的 ADB 殼層指令 | 
| receiver | IShellOutputReceiver:要將殼層輸出內容導向至IShellOutputReceiver。 | 
| maxTimeoutForCommand | long:指令完成的最大逾時時間;單位為timeUnit中指定的單位 | 
| maxTimeToOutputShellResponse | long:指令允許不輸出任何回應的時間上限;單位為timeUnit中指定的單位 | 
| timeUnit | TimeUnit:maxTimeToOutputShellResponse的單位 | 
| retryAttempts | int:如果指令因例外狀況而失敗,則重試指令的次數上限。如果執行 retryAttempts 失敗,系統會擲回 DeviceNotResponsiveException。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeShellCommand
public abstract void executeShellCommand (String command, 
                IShellOutputReceiver receiver)執行指定的 ADB 殼層指令,如果指令失敗,則重試多次。
 executeShellCommand(String, com.android.ddmlib.IShellOutputReceiver, long, TimeUnit, int) 的簡易形式,含有預設值。
| 參數 | |
|---|---|
| command | String:要執行的 ADB 殼層指令 | 
| receiver | IShellOutputReceiver:要將殼層輸出內容導向至IShellOutputReceiver。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeShellV2Command
public abstract CommandResult executeShellV2Command (String command)
輔助方法,可執行 ADB 殼層指令,並將結果傳回為 CommandResult,並以適當方式填入指令狀態輸出內容、stdout 和 stderr。
| 參數 | |
|---|---|
| command | String:應執行的指令。 | 
| 傳回 | |
|---|---|
| CommandResult | CommandResult中的結果。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeShellV2Command
public abstract CommandResult executeShellV2Command (String command, OutputStream pipeToOutput)
輔助方法,可執行 ADB 殼層指令,並將結果傳回為 CommandResult,並以適當方式填入指令狀態輸出內容和 stderr。stdout 會導向至指定的串流。
| 參數 | |
|---|---|
| command | String:應執行的指令。 | 
| pipeToOutput | OutputStream:ERROR(/OutputStream)會重新導向 std 輸出內容,或為空值。 | 
| 傳回 | |
|---|---|
| CommandResult | CommandResult中的結果。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeShellV2Command
public abstract CommandResult executeShellV2Command (String command, File pipeAsInput)
輔助方法,可執行 ADB 殼層指令,並將結果傳回為 CommandResult,並以適當方式填入指令狀態輸出內容、stdout 和 stderr。
| 參數 | |
|---|---|
| command | String:應執行的指令。 | 
| pipeAsInput | File:會以管道輸送至指令做為輸入內容的ERROR(/File),或空值。 | 
| 傳回 | |
|---|---|
| CommandResult | CommandResult中的結果。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeShellV2Command
public abstract CommandResult executeShellV2Command (String command, long maxTimeoutForCommand, TimeUnit timeUnit, int retryAttempts)
執行 ADB 殼層指令,並提供更多參數來控制指令行為。
| 參數 | |
|---|---|
| command | String:要執行的 ADB 殼層指令 | 
| maxTimeoutForCommand | long:指令完成的最大逾時時間;單位為timeUnit中指定的單位 | 
| timeUnit | TimeUnit:maxTimeToOutputShellResponse的單位 | 
| retryAttempts | int:如果指令因例外狀況而失敗,則重試指令的次數上限。如果執行 retryAttempts 失敗,系統會擲回 DeviceNotResponsiveException。 | 
| 傳回 | |
|---|---|
| CommandResult | |
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeShellV2Command
public abstract CommandResult executeShellV2Command (String command, long maxTimeoutForCommand, TimeUnit timeUnit)
執行 ADB 殼層指令,並提供更多參數來控制指令行為。
| 參數 | |
|---|---|
| command | String:要執行的 ADB 殼層指令 | 
| maxTimeoutForCommand | long:指令完成的最大逾時時間;單位為timeUnit中指定的單位 | 
| timeUnit | TimeUnit:maxTimeToOutputShellResponse的單位 | 
| 傳回 | |
|---|---|
| CommandResult | |
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeShellV2Command
public abstract CommandResult executeShellV2Command (String command, File pipeAsInput, OutputStream pipeToOutput, long maxTimeoutForCommand, TimeUnit timeUnit, int retryAttempts)
執行 ADB 殼層指令,並提供更多參數來控制指令行為。
| 參數 | |
|---|---|
| command | String:要執行的 ADB 殼層指令 | 
| pipeAsInput | File:會以管道輸送至指令做為輸入內容的ERROR(/File),或空值。 | 
| pipeToOutput | OutputStream:ERROR(/OutputStream)會重新導向 std 輸出內容,或為空值。 | 
| maxTimeoutForCommand | long:指令完成的最大逾時時間;單位為timeUnit中指定的單位 | 
| timeUnit | TimeUnit:maxTimeToOutputShellResponse的單位 | 
| retryAttempts | int:如果指令因例外狀況而失敗,則重試指令的次數上限。如果執行 retryAttempts 失敗,系統會擲回 DeviceNotResponsiveException。 | 
| 傳回 | |
|---|---|
| CommandResult | |
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
executeShellV2Command
public abstract CommandResult executeShellV2Command (String command, File pipeAsInput, OutputStream pipeToOutput, OutputStream pipeToError, long maxTimeoutForCommand, TimeUnit timeUnit, int retryAttempts)
執行 ADB 殼層指令,並提供更多參數來控制指令行為。
| 參數 | |
|---|---|
| command | String:要執行的 ADB 殼層指令 | 
| pipeAsInput | File:會以管道輸送至指令做為輸入內容的ERROR(/File),或空值。 | 
| pipeToOutput | OutputStream:ERROR(/OutputStream)會重新導向 std 輸出內容,或為空值。 | 
| pipeToError | OutputStream:ERROR(/OutputStream),其中 std 錯誤會重新導向,或為空值。 | 
| maxTimeoutForCommand | long:指令完成的最大逾時時間;單位為timeUnit中指定的單位 | 
| timeUnit | TimeUnit:maxTimeToOutputShellResponse的單位 | 
| retryAttempts | int:如果指令因例外狀況而失敗,則重試指令的次數上限。如果執行 retryAttempts 失敗,系統會擲回 DeviceNotResponsiveException。 | 
| 傳回 | |
|---|---|
| CommandResult | |
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
fastbootWipePartition
public abstract CommandResult fastbootWipePartition (String partition)
裝置分區的輔助方法。
 如果 getUseFastbootErase() 是 true,則會使用 fastboot erase 來清除分區。裝置必須在下次啟動時建立檔案系統。否則,系統會使用 fastboot 格式,在裝置上建立新的檔案系統。
應在裝置已進入快速系統啟動模式時使用。
| 參數 | |
|---|---|
| partition | String:要清除的分割區 | 
| 傳回 | |
|---|---|
| CommandResult | 包含指令輸出的 CommandResult | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
getApiLevel
public abstract int getApiLevel ()
取得裝置 API 級別。預設值為 UNKNOWN_API_LEVEL。
| 傳回 | |
|---|---|
| int | 整數,表示裝置的 API 級別 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
getBasebandVersion
public abstract String getBasebandVersion ()
取得此裝置基頻 (無線電) 版本的簡便方法。取得無線電版本的做法會因裝置而異,因此可能無法為所有裝置傳回正確的資訊。這個方法會使用 gsm.version.baseband 屬性傳回正確的版本資訊。這項資訊對部分 CDMA 裝置來說並不準確,且此處傳回的版本可能與 fastboot 回報的版本不符,也可能不會傳回 CDMA 無線電的版本。簡而言之,只有在 gsm.version.baseband 屬性與 fastboot getvar version-baseband 傳回的版本相同時,這個方法才會回報正確的版本。
| 傳回 | |
|---|---|
| String | String基頻版本或null(如果無法判斷)
          (裝置沒有無線電或無法讀取版本字串) | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
getBattery
public abstract Integer getBattery ()
傳回裝置目前的電池電量,如果無法取得電池電量,則傳回 Null。
| 傳回 | |
|---|---|
| Integer | |
getBooleanProperty
public abstract boolean getBooleanProperty (String name, 
                boolean defaultValue)傳回指定屬性的布林值。
| 參數 | |
|---|---|
| name | String:屬性名稱 | 
| defaultValue | boolean:如果屬性為空白或不存在,則傳回預設值。 | 
| 傳回 | |
|---|---|
| boolean | 如果屬性值為 "1"、"y"、"yes"、"on"或"true",則為true;如果屬性值為"0"、"n"、"no"、"off"、"false"或defaultValue,則為false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
getBootHistory
public abstractgetBootHistory () 
輔助方法會收集啟動時間和啟動原因的啟動記錄地圖。
| 傳回 | |
|---|---|
|  | 開機時間 (從 Epoch 紀元時間起算,以世界標準時間秒為單位) 和開機原因對照表 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
getBootHistorySince
public abstractgetBootHistorySince (long utcEpochTime, TimeUnit timeUnit) 
輔助方法會收集啟動歷史地圖,其中包含從裝置的紀元起算的指定時間,以及指定的時間單位和啟動時間和啟動原因。您可以使用 getDeviceDate() 方法,取得目前裝置的 utcEpochTime 以毫秒為單位。
| 參數 | |
|---|---|
| utcEpochTime | long:自 Epoch 起算的裝置時間。 | 
| timeUnit | TimeUnit:時間單位TimeUnit。 | 
| 傳回 | |
|---|---|
|  | 開機時間 (從 Epoch 紀元時間起算,以世界標準時間秒為單位) 和開機原因對照表 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
getBootloaderVersion
public abstract String getBootloaderVersion ()
取得此裝置的系統啟動載入程式版本的便利方法。
會嘗試從裝置目前狀態中擷取 Bootloader 版本。(例如,如果裝置處於快速系統啟動模式,則會嘗試從快速系統啟動模式擷取版本)
| 傳回 | |
|---|---|
| String | String系統啟動載入程式版本,如果找不到,則為null | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
getBuildAlias
public abstract String getBuildAlias ()
擷取裝置目前執行的版本別名。
相較於版本 ID (通常是 Nexus 版本的編號),版本別名通常是更易讀的字串。舉例來說,Android 4.2 最終版本的代號為 JDQ39,建構 ID 為 573038
| 傳回 | |
|---|---|
| String | 建構別名,如果無法擷取,則改為使用建構 ID | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
getBuildFlavor
public abstract String getBuildFlavor ()
擷取裝置的版本風味。
| 傳回 | |
|---|---|
| String | 建構版本,如果無法擷取,則為空值 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
getBuildId
public abstract String getBuildId ()
擷取裝置目前執行的版本。
| 傳回 | |
|---|---|
| String | 建構 ID 或 IBuildInfo.UNKNOWN_BUILD_ID(如果無法擷取) | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
getBuildSigningKeys
public abstract String getBuildSigningKeys ()
傳回用於簽署裝置映像檔的金鑰類型
通常 Android 裝置會使用測試金鑰 (例如 AOSP) 或發布金鑰 (由個別裝置製造商控制) 進行簽署
| 傳回 | |
|---|---|
| String | 如果找到簽署金鑰,則傳回該金鑰,否則傳回空值。 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
getCachedDeviceDescriptor
public abstract DeviceDescriptor getCachedDeviceDescriptor ()
如果已分配裝置,則會傳回快取的 DeviceDescriptor,否則會傳回目前的 DeviceDescriptor。
| 傳回 | |
|---|---|
| DeviceDescriptor | |
getCachedDeviceDescriptor
public abstract DeviceDescriptor getCachedDeviceDescriptor (boolean shortDescriptor)
如果已分配裝置,則會傳回快取的 DeviceDescriptor,否則會傳回目前的 DeviceDescriptor。
| 參數 | |
|---|---|
| shortDescriptor | boolean:是否將描述符限制為最少必要資訊 | 
| 傳回 | |
|---|---|
| DeviceDescriptor | |
getChildren
public abstract String[] getChildren (String deviceFilePath)
使用 IFileEntry 的替代方案,有時會因權限問題而無法運作。
| 參數 | |
|---|---|
| deviceFilePath | String:裝置上要進行搜尋的路徑 | 
| 傳回 | |
|---|---|
| String[] | 字串陣列,其中包含裝置路徑中的所有檔案。 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
getConnection
public abstract AbstractConnection getConnection ()
傳回與裝置相關聯的連線。
| 傳回 | |
|---|---|
| AbstractConnection | |
getDeviceDate
public abstract long getDeviceDate ()
以 Epoch 紀元時間為起點,以毫秒為單位傳回裝置的日期。
| 傳回 | |
|---|---|
| long | 裝置的日期,以 Epoch 格式表示。 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
getDeviceDescriptor
public abstract DeviceDescriptor getDeviceDescriptor ()
從裝置資訊傳回 DeviceDescriptor,即可取得相關資訊,而無須傳遞實際的裝置物件。
| 傳回 | |
|---|---|
| DeviceDescriptor | |
getDeviceDescriptor
public abstract DeviceDescriptor getDeviceDescriptor (boolean shortDescriptor)
從裝置資訊傳回 DeviceDescriptor,即可取得相關資訊,而無須傳遞實際的裝置物件。
| 參數 | |
|---|---|
| shortDescriptor | boolean:是否將描述符限制為最少必要資訊 | 
| 傳回 | |
|---|---|
| DeviceDescriptor | |
getDeviceTimeOffset
public abstract long getDeviceTimeOffset (Date date)
輔助函式,用於取得裝置與指定 ERROR(/Date) 之間的時間差異。在內部使用 Epoch 時間。
| 參數 | |
|---|---|
| date | Date | 
| 傳回 | |
|---|---|
| long | 差異 (毫秒) | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
getEmulatorOutput
public abstract InputStreamSource getEmulatorOutput ()
取得模擬器 stdout 和 stderr 的串流
| 傳回 | |
|---|---|
| InputStreamSource | 模擬器輸出內容 | 
getExternalStoreFreeSpace
public abstract long getExternalStoreFreeSpace ()
輔助方法,用於判斷裝置外部儲存空間的可用空間大小。
| 傳回 | |
|---|---|
| long | 可用空間的大小 (以 KB 為單位) | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
getFastbootProductType
public abstract String getFastbootProductType ()
在快速系統啟動模式下,取得裝置產品類型的便利方法。
 只有在裝置處於快速啟動狀態時,才應使用此方法。在這種情況下,這個變化版本比一般 getProductType() 方法安全一些,因為如果裝置處於不正確狀態或無回應,ITestDevice 就會知道要將裝置復原為 fastboot。
| 傳回 | |
|---|---|
| String | String產品類型名稱,如果無法判斷,則為null | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
getFastbootProductVariant
public abstract String getFastbootProductVariant ()
在快速系統啟動模式下,取得裝置產品類型的便利方法。
 只有在裝置處於快速啟動狀態時,才應使用此方法。在這種情況下,這個變化版本比一般 getProductType() 方法安全一些,因為如果裝置處於不正確狀態或無回應,ITestDevice 就會知道要將裝置復原為 fastboot。
| 傳回 | |
|---|---|
| String | String產品類型名稱,如果無法判斷,則為null | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
getFastbootSerialNumber
public abstract String getFastbootSerialNumber ()
傳回快速啟動模式序號。
| 傳回 | |
|---|---|
| String | |
getFastbootVariable
public abstract String getFastbootVariable (String variableName)
從裝置擷取指定的 fastboot 變數值。
| 參數 | |
|---|---|
| variableName | String:變數名稱 | 
| 傳回 | |
|---|---|
| String | 屬性值,如果不存在則為 null | 
| 擲回 | |
|---|---|
|  | UnsupportedOperationException | 
| DeviceNotAvailableException | |
getFileEntry
public abstract IFileEntry getFileEntry (String path)
擷取裝置上遠端檔案的參照。
| 參數 | |
|---|---|
| path | String:要擷取的檔案路徑。可以是絕對路徑或相對於「/」的路徑 (也就是說,系統支援「/system」和「system」兩種語法) | 
| 傳回 | |
|---|---|
| IFileEntry | 如果找不到指定 path 的檔案,則為 IFileEntry或null | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
getIDevice
public abstract IDevice getIDevice ()
傳回相關 ddmlib IDevice 的參照。
 每次裝置從 ADB 中斷連線並重新連線時,DDMS 都可能會分配新的 IDevice。因此,呼叫端不應保留 IDevice 的參照,因為該參照可能會失效。
| 傳回 | |
|---|---|
| IDevice | IDevice | 
getIntProperty
public abstract long getIntProperty (String name, 
                long defaultValue)傳回裝置中指定屬性的整數值。
| 參數 | |
|---|---|
| name | String:屬性名稱 | 
| defaultValue | long:如果屬性為空白或不存在,則傳回預設值。 | 
| 傳回 | |
|---|---|
| long | 屬性值或 defaultValue(如果屬性為空白、不存在或沒有整數值)。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
getLastExpectedRebootTimeMillis
public abstract long getLastExpectedRebootTimeMillis ()
傳回 Tradefed API 上次觸發重新啟動作業的時間,以 System.currentTimeMillis() 傳回的 EPOCH 為基準,以毫秒為單位。
| 傳回 | |
|---|---|
| long | |
getLaunchApiLevel
public abstract int getLaunchApiLevel ()
取得裝置首次啟動的 API 級別。預設值為 UNKNOWN_API_LEVEL。
| 傳回 | |
|---|---|
| int | 整數,表示裝置首次啟動的 API 級別 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
getLogcat
public abstract InputStreamSource getLogcat ()
擷取 logcat 資料的快照串流。
可在兩種模式下運作:
TestDeviceOptions.getMaxLogcatDataSize() 個位元組| 傳回 | |
|---|---|
| InputStreamSource | |
getLogcat
public abstract InputStreamSource getLogcat (int maxBytes)
擷取最後 maxBytes 個擷取的 Logcat 資料的快照串流。
適用於您想經常擷取擷取的 logcat 資料快照,但又不想因擷取整個 getLogcat() 快照而耗用大量磁碟空間的情況。
| 參數 | |
|---|---|
| maxBytes | int:傳回的資料數量上限。應為可輕鬆放入記憶體的數量 | 
| 傳回 | |
|---|---|
| InputStreamSource | |
getLogcatDump
public abstract InputStreamSource getLogcatDump ()
取得裝置目前的 Logcat 轉儲檔案。與 getLogcat() 不同,此方法一律會傳回 logcat 的靜態傾印。
缺點是,如果無法連線到裝置,就不會傳回任何內容。
| 傳回 | |
|---|---|
| InputStreamSource | InputStreamSource的 Logcat 資料。如果擷取 logcat 資料失敗,系統會傳回空白串流。 | 
getLogcatSince
public abstract InputStreamSource getLogcatSince (long date)
擷取擷取的 Logcat 資料快照串流,從指定日期開始。應使用裝置上的時間 getDeviceDate()。
| 參數 | |
|---|---|
| date | long:以 Epoch 格式表示的毫秒數,代表從何時開始擷取快照到目前的時間。(可使用「date +%s」取得) | 
| 傳回 | |
|---|---|
| InputStreamSource | |
getMountPoint
public abstract String getMountPoint (String mountName)
傳回掛接點。
 如果 IDevice 中的快取資訊無法使用,則直接查詢裝置。
 TODO:將此行為移至 IDevice.getMountPoint(String)
| 參數 | |
|---|---|
| mountName | String:掛接點的名稱 | 
| 傳回 | |
|---|---|
| String | 掛接點或 null | 
getMountPointInfo
public abstract ITestDevice.MountPointInfo getMountPointInfo (String mountpoint)
傳回與指定掛載點路徑相對應的 MountPointInfo,如果該路徑沒有任何掛載項目,或未以掛載點的形式顯示在 /proc/mounts 中,則傳回 null。
| 參數 | |
|---|---|
| mountpoint | String | 
| 傳回 | |
|---|---|
| ITestDevice.MountPointInfo | MountPointInfo的ERROR(/List),其中包含「/proc/mounts」中的資訊 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
另請參閱:
getMountPointInfo
public abstractgetMountPointInfo () 
傳回裝置上 /proc/mounts 中剖析版本的資訊
| 傳回 | |
|---|---|
|  | MountPointInfo的ERROR(/List),其中包含「/proc/mounts」中的資訊 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
getPartitionFreeSpace
public abstract long getPartitionFreeSpace (String partition)
輔助方法,用於判斷裝置分區的可用空間大小。
| 參數 | |
|---|---|
| partition | String | 
| 傳回 | |
|---|---|
| long | 可用空間的大小 (以 KB 為單位) | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
getProcessByName
public abstract ProcessInfo getProcessByName (String processName)
輔助方法會執行「pidof」和「stat」指令,並傳回 ProcessInfo 物件,其中包含 PID 和指定程序的程序開始時間。
| 參數 | |
|---|---|
| processName | String:程序名稱字串。 | 
| 傳回 | |
|---|---|
| ProcessInfo | 指定的 processName 的 ProcessInfo | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
getProcessPid
public abstract String getProcessPid (String process)
傳回服務的 pid,如果發生錯誤則傳回 null。
| 參數 | |
|---|---|
| process | String:程序名稱字串。 | 
| 傳回 | |
|---|---|
| String | |
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
getProductType
public abstract String getProductType ()
取得裝置產品類型的便利方法。
裝置處於 ADB 或 Fastboot 模式時,這個方法就會生效。
| 傳回 | |
|---|---|
| String | String產品類型名稱。不會為空值 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原,或是無法判斷產品類型 | 
getProductVariant
public abstract String getProductVariant ()
取得此裝置產品子類的便利方法。
裝置處於 ADB 或 Fastboot 模式時,這個方法就會生效。
| 傳回 | |
|---|---|
| String | String產品子類名稱,如果無法判定,則為null | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
getProperty
public abstract String getProperty (String name)
從裝置中擷取指定的屬性值。
| 參數 | |
|---|---|
| name | String:屬性名稱 | 
| 傳回 | |
|---|---|
| String | 屬性值,如果不存在則為 null | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
getRecoveryMode
public abstract ITestDevice.RecoveryMode getRecoveryMode ()
取得裝置目前使用的復原模式。
| 傳回 | |
|---|---|
| ITestDevice.RecoveryMode | 裝置目前使用的復原模式。 | 
getTombstones
public abstractgetTombstones () 
從裝置擷取並傳回墓碑清單。需要取得 root 權限。
方法是盡力而為,因此如果某個墓碑因任何原因無法拉取,就不會出現在清單中。只有 DeviceNotAvailableException 會提早終止方法。
| 傳回 | |
|---|---|
|  | 墓碑檔案清單,如果沒有墓碑,則為空白。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
另請參閱:
getTotalMemory
public abstract long getTotalMemory ()
以位元組為單位傳回實體記憶體總大小,或在發生內部錯誤時傳回 -1
| 傳回 | |
|---|---|
| long | |
getTrackingSerial
public String getTrackingSerial ()
為了裝置管理目的,請取得用於追蹤裝置的序號。
| 傳回 | |
|---|---|
| String | |
getUseFastbootErase
public abstract boolean getUseFastbootErase ()
取得是否要使用 fastboot erase 或 fastboot format 來清除裝置上的分區。
| 傳回 | |
|---|---|
| boolean | 如果要使用 fastboot 擦除功能,請使用 true;如果要使用 fastboot 格式功能,請使用false。 | 
isAdbRoot
public abstract boolean isAdbRoot ()
| 傳回 | |
|---|---|
| boolean | 如果裝置目前已啟用 ADB 根目錄,則為 true;否則為false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
isAdbTcp
public abstract boolean isAdbTcp ()
| 傳回 | |
|---|---|
| boolean | true如果裝置已連線至 adb-over-tcp,否則為false。 | 
isAppEnumerationSupported
public abstract boolean isAppEnumerationSupported ()
檢查裝置上的平台是否支援應用程式列舉
| 傳回 | |
|---|---|
| boolean | 如果支援應用程式列舉,則傳回「是」;否則傳回「否」 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
isBypassLowTargetSdkBlockSupported
public abstract boolean isBypassLowTargetSdkBlockSupported ()
檢查裝置平台是否支援在應用程式安裝時略過低目標 SDK 封鎖
| 傳回 | |
|---|---|
| boolean | 如果支援略過低目標 SDK 區塊,則傳回「是」,否則傳回「否」 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
isDebugfsMounted
public abstract boolean isDebugfsMounted ()
檢查是否已掛載 debugfs。
| 傳回 | |
|---|---|
| boolean | true(如果已掛載 debugfs) | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
isDeviceEncrypted
public abstract boolean isDeviceEncrypted ()
傳回裝置是否受到加密保護。
| 傳回 | |
|---|---|
| boolean | true(如果裝置已加密)。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
isDirectory
public abstract boolean isDirectory (String deviceFilePath)
如果裝置上的路徑是目錄,則傳回 True,否則傳回 false。
| 參數 | |
|---|---|
| deviceFilePath | String | 
| 傳回 | |
|---|---|
| boolean | |
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
isEncryptionSupported
public abstract boolean isEncryptionSupported ()
傳回裝置是否支援加密功能。
| 傳回 | |
|---|---|
| boolean | true(如果裝置支援加密功能)。 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
isExecutable
public abstract boolean isExecutable (String fullPath)
如果裝置上的檔案路徑是可執行檔案,則傳回「True」;否則傳回「false」。
| 參數 | |
|---|---|
| fullPath | String | 
| 傳回 | |
|---|---|
| boolean | |
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
isHeadless
public abstract boolean isHeadless ()
如果裝置為無頭裝置 (沒有螢幕),則傳回 true,否則傳回 false。
| 傳回 | |
|---|---|
| boolean | |
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
isRuntimePermissionSupported
public abstract boolean isRuntimePermissionSupported ()
檢查裝置上的平台是否支援執行階段權限授予
| 傳回 | |
|---|---|
| boolean | 如果支援執行階段權限,則傳回「是」;否則傳回「否」。 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
isStateBootloaderOrFastbootd
public abstract boolean isStateBootloaderOrFastbootd ()
如果裝置處於 TestDeviceState.FASTBOOT 或 TestDeviceState.FASTBOOTD,則傳回 true。
| 傳回 | |
|---|---|
| boolean | |
logAnrs
public abstract boolean logAnrs (ITestLogger logger)
從裝置收集並記錄 ANR。
| 參數 | |
|---|---|
| logger | ITestLogger:用於記錄 ANR 的ITestLogger。 | 
| 傳回 | |
|---|---|
| boolean | 如果記錄成功,則傳回 True,否則傳回 false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
logOnDevice
public abstract void logOnDevice (String tag, 
                Log.LogLevel level, 
                String format, 
                Object... args)在裝置的 logcat 中記錄訊息。這是安全的呼叫,即使記錄失敗也不會擲回。
| 參數 | |
|---|---|
| tag | String:在 Logcat 中記錄訊息的標記。 | 
| level | Log.LogLevel:logcat 中訊息的偵錯層級。 | 
| format | String:訊息格式。 | 
| args | Object:透過 String.format() 取代的 args。 | 
mountDebugfs
public abstract void mountDebugfs ()
掛接 debugfs。
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
nonBlockingReboot
public abstract void nonBlockingReboot ()
發出指令重新啟動裝置,並在指令完成及裝置不再對 ADB 可見時傳回。
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
postBootSetup
public abstract void postBootSetup ()
執行操作說明,設定裝置以便每次啟動後進行測試。
應在裝置完全啟動/可用後呼叫
在一般情況下,您不需要明確呼叫這個方法,因為實作項目應在重新啟動時自動執行這些步驟。
當裝置因其他事件 (例如 fastboot 更新指令完成) 而重新啟動時,可能需要呼叫此方法。
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
postInvocationTearDown
public void postInvocationTearDown ()
      This method is deprecated.
    請改用 postInvocationTearDown(Throwable)。
針對裝置特定的必要清理作業,在叫用完成後執行額外步驟。
postInvocationTearDown
public abstract void postInvocationTearDown (Throwable invocationException)
針對裝置特定的必要清理作業,在叫用完成後執行額外步驟。
| 參數 | |
|---|---|
| invocationException | Throwable:如果有,則為叫用失敗所引發的最終例外狀況。 | 
preInvocationSetup
public void preInvocationSetup (IBuildInfo info, MultiMap<String, String> attributes)
裝置專屬的必要設定額外步驟,會在叫用流程前在裝置上執行。
| 參數 | |
|---|---|
| info | IBuildInfo:裝置的IBuildInfo。 | 
| attributes | MultiMap:在叫用內容中儲存的屬性 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.targetprep.TargetSetupError | 
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
| TargetSetupError | |
pullDir
public abstract boolean pullDir (String deviceFilePath, 
                File localDir)遞迴式從裝置中提取目錄內容。
| 參數 | |
|---|---|
| deviceFilePath | String:遠端來源的絕對檔案路徑 | 
| localDir | File:要將檔案拉入的本機目錄 | 
| 傳回 | |
|---|---|
| boolean | true,如果檔案已成功拉取。否則傳回false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
pullDir
public abstract boolean pullDir (String deviceFilePath, 
                File localDir, 
                int userId)遞迴式從裝置中提取目錄內容。
| 參數 | |
|---|---|
| deviceFilePath | String:遠端來源的絕對檔案路徑 | 
| localDir | File:要將檔案拉入的本機目錄 | 
| userId | int:要從中提取的使用者 ID | 
| 傳回 | |
|---|---|
| boolean | true,如果檔案已成功拉取。否則傳回false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
pullFile
public abstract File pullFile (String remoteFilePath, 
                int userId)從裝置中擷取檔案,將檔案儲存在本機暫存的 ERROR(/File) 中,並傳回該 File。
| 參數 | |
|---|---|
| remoteFilePath | String:裝置上檔案的絕對路徑。 | 
| userId | int:要從中提取的使用者 ID | 
| 傳回 | |
|---|---|
| File | 包含裝置檔案內容的 ERROR(/File),或null(如果複製作業因任何原因 (包括主機檔案系統發生問題) 而失敗) | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
pullFile
public abstract File pullFile (String remoteFilePath)
從裝置中擷取檔案,將檔案儲存在本機暫存的 ERROR(/File) 中,並傳回該 File。
| 參數 | |
|---|---|
| remoteFilePath | String:裝置上檔案的絕對路徑。 | 
| 傳回 | |
|---|---|
| File | 包含裝置檔案內容的 ERROR(/File),或null(如果複製作業因任何原因失敗,包括主機檔案系統發生問題) | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
pullFile
public abstract boolean pullFile (String remoteFilePath, 
                File localFile)從裝置中擷取檔案。
| 參數 | |
|---|---|
| remoteFilePath | String:裝置上檔案的絕對路徑。 | 
| localFile | File:要儲存內容的本機檔案。如果不為空白,內容會遭到取代。 | 
| 傳回 | |
|---|---|
| boolean | true:如果檔案已成功擷取。否則傳回false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
pullFile
public abstract boolean pullFile (String remoteFilePath, 
                File localFile, 
                int userId)從裝置中擷取檔案。
| 參數 | |
|---|---|
| remoteFilePath | String:裝置上檔案的絕對路徑。 | 
| localFile | File:要儲存內容的本機檔案。如果不為空白,內容會遭到取代。 | 
| userId | int:要從中提取的使用者 ID | 
| 傳回 | |
|---|---|
| boolean | true:如果檔案已成功擷取。否則傳回false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
pullFileContents
public abstract String pullFileContents (String remoteFilePath)
從裝置中擷取檔案,並傳回內容。
| 參數 | |
|---|---|
| remoteFilePath | String:裝置上檔案的絕對路徑。 | 
| 傳回 | |
|---|---|
| String | 包含裝置檔案內容的 String,或null(如果複製作業因任何原因失敗,包括主機檔案系統發生問題) | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
pullFileFromExternal
public abstract File pullFileFromExternal (String remoteFilePath)
方便方法,可從裝置的外部儲存空間擷取檔案,將檔案儲存在本機臨時 ERROR(/File) 中,並傳回該 File 的參照。
| 參數 | |
|---|---|
| remoteFilePath | String:相對於裝置外部儲存裝置掛載點的裝置檔案路徑 | 
| 傳回 | |
|---|---|
| File | 包含裝置檔案內容的 ERROR(/File),或null(如果複製作業因任何原因失敗,包括主機檔案系統發生問題) | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
pushDir
public abstract boolean pushDir (File localDir, 
                String deviceFilePath, 
                int userId)遞迴地將目錄內容推送至裝置。
| 參數 | |
|---|---|
| localDir | File:要推送的本機目錄 | 
| deviceFilePath | String:遠端目的地的絕對檔案路徑 | 
| userId | int:要推送的使用者 ID | 
| 傳回 | |
|---|---|
| boolean | true:如果檔案已成功推送。否則傳回false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
pushDir
public abstract boolean pushDir (File localDir, 
                String deviceFilePath, 
                 excludedDirectories) 遞迴將目錄內容推送至裝置,同時排除部分已篩選的目錄。
| 參數 | |
|---|---|
| localDir | File:要推送的本機目錄 | 
| deviceFilePath | String:遠端目的地的絕對檔案路徑 | 
| excludedDirectories | :不應推送的排除目錄名稱集合。 | 
| 傳回 | |
|---|---|
| boolean | true:如果檔案已成功推送。否則傳回false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
pushDir
public abstract boolean pushDir (File localDir, 
                String deviceFilePath)遞迴地將目錄內容推送至裝置。
| 參數 | |
|---|---|
| localDir | File:要推送的本機目錄 | 
| deviceFilePath | String:遠端目的地的絕對檔案路徑 | 
| 傳回 | |
|---|---|
| boolean | true:如果檔案已成功推送。否則傳回false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
pushFile
public abstract boolean pushFile (File localFile, 
                String deviceFilePath, 
                boolean evaluateContentProviderNeeded)pushFile(File, String) 的變化版本,可視需要評估內容供應者的需要。
| 參數 | |
|---|---|
| localFile | File:要推送的本機檔案 | 
| deviceFilePath | String:遠端目的地檔案的絕對路徑 | 
| evaluateContentProviderNeeded | boolean:是否要檢查是否需要內容供應器 | 
| 傳回 | |
|---|---|
| boolean | true:如果檔案已成功推送。否則傳回false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
pushFile
public abstract boolean pushFile (File localFile, 
                String deviceFilePath)將檔案推送至裝置。預設使用內容供應器。
| 參數 | |
|---|---|
| localFile | File:要推送的本機檔案 | 
| deviceFilePath | String:遠端目的地檔案的絕對路徑 | 
| 傳回 | |
|---|---|
| boolean | true:如果檔案已成功推送。否則傳回false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
pushFile
public abstract boolean pushFile (File localFile, 
                String deviceFilePath, 
                int userId)將檔案推送至裝置。預設使用內容供應器。
| 參數 | |
|---|---|
| localFile | File:要推送的本機檔案 | 
| deviceFilePath | String:遠端目的地檔案的絕對路徑 | 
| userId | int:要推送至的 userId | 
| 傳回 | |
|---|---|
| boolean | true:如果檔案已成功推送。否則傳回false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
pushString
public abstract boolean pushString (String contents, 
                String deviceFilePath)將從字串建立的檔案推送至裝置
| 參數 | |
|---|---|
| contents | String:要推送的檔案內容 | 
| deviceFilePath | String:遠端目的地檔案的絕對路徑 | 
| 傳回 | |
|---|---|
| boolean | true:如果字串已成功推送。否則傳回false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
重開。
public abstract void reboot ()
重新啟動裝置並進入 ADB 模式。
封鎖,直到裝置可供使用為止。
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果裝置在重新啟動後無法使用 | 
重開。
public abstract void reboot (String reason)
將裝置重新啟動至 ADB 模式,並使用指定的 reason 在重新啟動時保留。
直到裝置可供使用為止。
您可以查詢 sys.boot.reason 屬性,取得上次重新啟動的原因。
| 參數 | |
|---|---|
| reason | String:重新啟動的原因,如果未指定原因,則為null。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果裝置在重新啟動後無法使用 | 
rebootIntoBootloader
public abstract void rebootIntoBootloader ()
重新啟動裝置並進入系統啟動載入程式模式。
阻斷裝置,直到裝置進入系統啟動載入程式模式。
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
rebootIntoFastbootd
public abstract void rebootIntoFastbootd ()
將裝置重新啟動至快速系統啟動模式。
直到裝置進入快速系統啟動模式為止。
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
rebootIntoRecovery
public abstract void rebootIntoRecovery ()
重新啟動裝置,進入 ADB 復原模式。
阻斷裝置進入復原模式
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果裝置在重新啟動後無法使用 | 
rebootIntoSideload
public abstract void rebootIntoSideload (boolean autoReboot)
將裝置重新啟動至 ADB 側載模式 (請注意,這是復原模式下的特殊模式)
阻斷裝置進入側載模式
| 參數 | |
|---|---|
| autoReboot | boolean:側載後是否自動重新啟動裝置 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果裝置在重新啟動後未處於側載狀態 | 
rebootIntoSideload
public abstract void rebootIntoSideload ()
將裝置重新啟動至 ADB 側載模式 (請注意,這是復原模式下的特殊模式)
阻斷裝置進入側載模式
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果裝置在重新啟動後未處於側載狀態 | 
rebootUntilOnline
public abstract void rebootUntilOnline ()
reboot() 的替代方案,只會在裝置連上網路 (即對 adb 可見) 時阻斷。
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果裝置在重新啟動後無法使用 | 
rebootUntilOnline
public abstract void rebootUntilOnline (String reason)
reboot() 的替代方案,只會在裝置連上網路 (即對 adb 可見) 時阻斷。
| 參數 | |
|---|---|
| reason | String:重新啟動的原因,如果未指定原因,則為null。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果裝置在重新啟動後無法使用 | 
另請參閱:
rebootUserspace
public abstract void rebootUserspace ()
僅重新啟動裝置的使用者空間部分。
直到裝置可供使用為止。
警告!使用者空間重新啟動功能目前仍在積極開發中,請自行承擔使用風險。
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果裝置在重新啟動後無法使用 | 
rebootUserspaceUntilOnline
public abstract void rebootUserspaceUntilOnline ()
rebootUserspace() ()} 的替代方案,只會在裝置上線 (即可供 ADB 查看) 時阻斷。
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果裝置在重新啟動後無法使用 | 
remountSystemReadOnly
public abstract void remountSystemReadOnly ()
將裝置上的系統分區設為唯讀。可能會重新啟動裝置。
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
remountSystemWritable
public abstract void remountSystemWritable ()
讓裝置上的系統分區可供寫入。可能會重新啟動裝置。
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
remountVendorReadOnly
public abstract void remountVendorReadOnly ()
將裝置上的供應商分區設為唯讀。可能會重新啟動裝置。
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
remountVendorWritable
public abstract void remountVendorWritable ()
讓裝置上的供應商分區可供寫入。可能會重新啟動裝置。
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
runInstrumentationTests
public abstract boolean runInstrumentationTests (IRemoteAndroidTestRunner runner, 
                ITestLifeCycleReceiver... listeners)方便方法,可使用一或多個以參數傳遞的事件監聽器執行 ERROR(/#runInstrumentationTests(com.android.ddmlib.testrunner.IRemoteAndroidTestRunner,Collection))。
| 參數 | |
|---|---|
| runner | IRemoteAndroidTestRunner:執行測試的IRemoteAndroidTestRunner | 
| listeners | ITestLifeCycleReceiver:測試結果事件監聽器 | 
| 傳回 | |
|---|---|
| boolean | true,表示測試指令已完成。false表示無法完成,但復原作業成功 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原,例如測試指令無法完成且復原失敗。 | 
runInstrumentationTests
public abstract boolean runInstrumentationTests (IRemoteAndroidTestRunner runner, 
                 listeners) 執行檢測設備測試,並提供裝置復原功能。
如果在測試執行完成前與裝置的連線中斷,且復原作業成功,則所有事件監聽器都會收到 testRunFailed 通知,並傳回「false」。系統不會重新執行測試指令。如有必要,呼叫端可重試。
如果在測試執行完成前與裝置的連線中斷,且復原作業失敗,則所有事件監聽器都會收到 testRunFailed 通知,並擲回 DeviceNotAvailableException。
| 參數 | |
|---|---|
| runner | IRemoteAndroidTestRunner:執行測試的IRemoteAndroidTestRunner | 
| listeners | :測試結果事件監聽器 | 
| 傳回 | |
|---|---|
| boolean | true,表示測試指令已完成。false:如果因裝置通訊例外狀況而無法完成,但復原作業成功 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原,例如測試指令無法完成且復原失敗。 | 
runInstrumentationTestsAsUser
public abstract boolean runInstrumentationTestsAsUser (IRemoteAndroidTestRunner runner, 
                int userId, 
                 listeners) | 參數 | |
|---|---|
| runner | IRemoteAndroidTestRunner | 
| userId | int | 
| listeners |  | 
| 傳回 | |
|---|---|
| boolean | |
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
runInstrumentationTestsAsUser
public abstract boolean runInstrumentationTestsAsUser (IRemoteAndroidTestRunner runner, 
                int userId, 
                ITestLifeCycleReceiver... listeners)與 ITestDevice.runInstrumentationTests(IRemoteAndroidTestRunner,
 ITestLifeCycleReceiver...) 相同,但會為特定使用者執行測試。
| 參數 | |
|---|---|
| runner | IRemoteAndroidTestRunner | 
| userId | int | 
| listeners | ITestLifeCycleReceiver | 
| 傳回 | |
|---|---|
| boolean | |
| 擲回 | |
|---|---|
| DeviceNotAvailableException | |
setDate
public abstract void setDate (Date date)
設定裝置上的日期
注意:在裝置上設定日期需要取得 root 權限
| 參數 | |
|---|---|
| date | Date:指定特定日期;如果null,則會使用主機日期 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
setOptions
public abstract void setOptions (TestDeviceOptions options)
為裝置設定 TestDeviceOptions
| 參數 | |
|---|---|
| options | TestDeviceOptions | 
setProperty
public abstract boolean setProperty (String propKey, 
                String propValue)在裝置上設定指定的屬性值。需要 adb root 為 true。
| 參數 | |
|---|---|
| propKey | String:要設定的目標鍵。 | 
| propValue | String:要設定的屬性值。 | 
| 傳回 | |
|---|---|
| boolean | 如果 setprop 指令成功,則會傳回 True,否則傳回 False。 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
setRecovery
public abstract void setRecovery (IDeviceRecovery recovery)
設定要用於這部裝置的 IDeviceRecovery。應在裝置首次分配時設定。
| 參數 | |
|---|---|
| recovery | IDeviceRecovery:IDeviceRecovery | 
setRecoveryMode
public abstract void setRecoveryMode (ITestDevice.RecoveryMode mode)
設定裝置目前要使用的復原模式。
用於控制在發生裝置通訊問題時,要使用的復原方法。建議您只在必要時才使用此方法 (例如架構發生故障時)。
| 參數 | |
|---|---|
| mode | ITestDevice.RecoveryMode:是否應開啟「recover till online only」模式。 | 
setTrackingSerial
public abstract void setTrackingSerial (String trackingSerial)
為了管理裝置,請追蹤我們用於參照裝置的序號。
| 參數 | |
|---|---|
| trackingSerial | String | 
setUseFastbootErase
public abstract void setUseFastbootErase (boolean useFastbootErase)
設定是否要使用 fastboot erase 或 fastboot format 來清除裝置上的分區。
| 參數 | |
|---|---|
| useFastbootErase | boolean:如果應使用 fastboot 擦除功能,請使用true;如果應使用 fastboot 格式功能,請使用false。 | 
startLogcat
public abstract void startLogcat ()
開始在背景擷取裝置的 Logcat 輸出內容。
如果 logcat 輸出內容已擷取,則不會產生任何影響。您之後可以透過 getLogcat 擷取資料。
 當裝置不再使用時,必須呼叫 stopLogcat()。
 在 TF 叫用內容中,通常不需要呼叫 startLogcat() 和 stopLogcat(),因為 TF 架構會啟動及停止 logcat。
startTradeInModeTesting
public abstract boolean startTradeInModeTesting (int timeoutMs)
啟用測試換購模式。裝置會完成資料清除並重新啟動。
| 參數 | |
|---|---|
| timeoutMs | int | 
| 傳回 | |
|---|---|
| boolean | 如果成功,則傳回 True,否則傳回 false | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
stopEmulatorOutput
public abstract void stopEmulatorOutput ()
關閉並刪除模擬器輸出內容。
stopLogcat
public abstract void stopLogcat ()
停止擷取裝置的 Logcat 輸出內容,並捨棄目前儲存的 Logcat 資料。
如果未擷取 Logcat 輸出內容,這個選項就不會生效。
stopTradeInModeTesting
public abstract void stopTradeInModeTesting ()
停止測試換購模式。裝置會重新啟動。
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
switchToAdbTcp
public abstract String switchToAdbTcp ()
將裝置切換至 ADB-over-TCP 模式。
| 傳回 | |
|---|---|
| String | 裝置無法切換時,請提供 TCP 序號或 null | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
switchToAdbUsb
public abstract boolean switchToAdbUsb ()
將裝置切換至透過 USB 的 ADB 模式。
| 傳回 | |
|---|---|
| boolean | 如果切換成功,則為 true,否則為false。 | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
syncFiles
public abstract boolean syncFiles (File localFileDir, 
                String deviceFilePath)將本機檔案目錄的內容以遞增方式同步至裝置。
比較本機檔案與遠端檔案的時間戳記,決定要推送哪些檔案。系統只會將「較新的」或不存在的檔案推送至裝置。因此,如果裝置上的檔案集已更新,則額外負擔應會相對較小。
系統會忽略隱藏檔案 (名稱開頭為「.」)。
使用方式範例:syncFiles("/tmp/files", "/sdcard") 會在 /sdcard/files 目錄不存在時建立該目錄,並遞迴將 /tmp/files 內容推送至 /sdcard/files。
| 參數 | |
|---|---|
| localFileDir | File:本機檔案目錄,其中包含要遞迴推送的檔案。 | 
| deviceFilePath | String:遠端目的地檔案的絕對路徑根目錄。這些檔案路徑中的所有目錄都必須可讀取。舉例來說,如果 ADB 不是根目錄,則推送至 /data/local/tmp 會失敗 | 
| 傳回 | |
|---|---|
| boolean | true,如果檔案已成功同步處理。否則傳回false。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
unlockDevice
public abstract boolean unlockDevice ()
如果裝置處於加密狀態,則解鎖裝置。
這個方法可能會重新啟動架構,但不會呼叫postBootSetup()。因此,在這個方法傳回時,裝置可能尚未完全就緒,無法進行測試。
    | 傳回 | |
|---|---|
| boolean | true(如果成功或裝置未加密)。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
| UnsupportedOperationException | 裝置不支援加密功能。 | 
unmountDebugfs
public abstract void unmountDebugfs ()
卸載 debugfs。
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
waitForBootComplete
public abstract boolean waitForBootComplete (long timeOut)
阻斷,直到裝置的啟動完成標記設定為止。
| 參數 | |
|---|---|
| timeOut | long:等待標記設定的時間 (以毫秒為單位) | 
| 傳回 | |
|---|---|
| boolean | 如果裝置的啟動完成標記在逾時前設定,則為 true | 
| 擲回 | |
|---|---|
|  | com.android.tradefed.device.DeviceNotAvailableException | 
| DeviceNotAvailableException | |
waitForDeviceAvailable
public abstract boolean waitForDeviceAvailable ()
等待裝置回應並可供測試。使用預設逾時時間。
| 傳回 | |
|---|---|
| boolean | 如果裝置可用,則傳回值為 True;如果復原功能已停用且無法使用,則傳回值為 False。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
waitForDeviceAvailable
public abstract boolean waitForDeviceAvailable (long waitTime)
等待裝置回應並可供測試。
| 參數 | |
|---|---|
| waitTime | long:等待時間 (以毫秒為單位) | 
| 傳回 | |
|---|---|
| boolean | 如果裝置可用,則傳回值為 True;如果復原功能已停用且無法使用,則傳回值為 False。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果裝置在 waitTime 到期後仍未回應。 | 
waitForDeviceAvailableInRecoverPath
public abstract boolean waitForDeviceAvailableInRecoverPath (long waitTime)
等待裝置回應並可使用,但不考慮復原路徑。
| 參數 | |
|---|---|
| waitTime | long | 
| 傳回 | |
|---|---|
| boolean | 如果裝置可用,則傳回 True;如果裝置無法使用,則傳回 False。 | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
waitForDeviceBootloader
public abstract void waitForDeviceBootloader ()
直到裝置可透過 fastboot 顯示為止。使用預設逾時時間。
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
waitForDeviceInRecovery
public abstract boolean waitForDeviceInRecovery (long waitTime)
裝置必須處於「adb recovery」狀態才能執行的區塊 (請注意,這與 IDeviceRecovery 不同)。
| 參數 | |
|---|---|
| waitTime | long:等待時間 (以毫秒為單位) | 
| 傳回 | |
|---|---|
| boolean | true如果裝置在時間到期前啟動至復原模式。其他情況則為false | 
waitForDeviceInSideload
public abstract boolean waitForDeviceInSideload (long waitTime)
裝置處於「adb sideload」狀態時的區塊
| 參數 | |
|---|---|
| waitTime | long:等待時間 (以毫秒為單位) | 
| 傳回 | |
|---|---|
| boolean | true如果裝置在時間到期前啟動側載。其他情況則為false
      | 
waitForDeviceNotAvailable
public abstract boolean waitForDeviceNotAvailable (long waitTime)
無法使用的裝置區塊,例如 ADB 中缺少的區塊
| 參數 | |
|---|---|
| waitTime | long:等待時間 (以毫秒為單位) | 
| 傳回 | |
|---|---|
| boolean | true如果裝置在時間到期前無法使用。其他情況則為false | 
waitForDeviceOnline
public abstract void waitForDeviceOnline ()
直到裝置可透過 ADB 查看為止。使用預設逾時時間
 請注意,裝置可能不會在完成後回應指令。請改用 waitForDeviceAvailable()。
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
waitForDeviceOnline
public abstract void waitForDeviceOnline (long waitTime)
直到裝置可透過 ADB 查看為止。
 請注意,裝置可能不會在完成後回應指令。請改用 waitForDeviceAvailable()。
| 參數 | |
|---|---|
| waitTime | long:等待時間 (以毫秒為單位) | 
| 擲回 | |
|---|---|
| DeviceNotAvailableException | 如果與裝置的連線中斷且無法復原。 | 
waitForDeviceShell
public abstract boolean waitForDeviceShell (long waitTime)
等待裝置回應基本 ADB 殼層指令。
| 參數 | |
|---|---|
| waitTime | long:等待時間 (以毫秒為單位) | 
| 傳回 | |
|---|---|
| boolean | 如果裝置在 waitTime 到期前開始回應,則為 true。 | 
