ContentProviderHandler

public class ContentProviderHandler
extends Object

java.lang.Object
   ↳ com.android.tradefed.device.contentprovider.ContentProviderHandler


這個處理常式會擷取內容供應器的互動,並允許使用裝置端內容供應器進行不同作業。

此類別中的所有實作皆應留意目前在裝置上執行的使用者。

摘要

欄位

public static final String[] COLUMNS

public static final String COLUMN_ABSOLUTE_PATH

public static final String COLUMN_DIRECTORY

public static final String COLUMN_METADATA

public static final String COLUMN_MIME_TYPE

public static final String COLUMN_NAME

public static final String CONTENT_PROVIDER_URI

public static final String NO_RESULTS_STRING

public static final String PACKAGE_NAME

public static final String QUERY_INFO_VALUE

公用建構函式

ContentProviderHandler(ITestDevice device)

建構函式。

ContentProviderHandler(ITestDevice device, Integer userId)

公用方法

boolean contentProviderNotFound()

如果其中一個作業失敗,而找不到內容供應器,則傳回 True。

static String createEscapedContentUri(String deviceFilePath)

傳回指定裝置路徑的完整 URI 字串 (逸出和編碼),避免非網址字元。

boolean deleteFile(String deviceFilePath)

內容供應器回呼,可在 URI 位置刪除檔案。

boolean doesFileExist(String deviceFilePath)

判斷檔案或非空白目錄是否在裝置上。

Integer getUserId()

傳回用於初始化這個執行個體的 userId。

boolean pullDir(String deviceFilePath, File localDir)

使用內容供應器,以遞迴方式提取裝置的目錄內容。

boolean pullFile(String deviceFilePath, File localFile)

內容供應器回呼,可將檔案從 URI 位置提取到本機檔案中。

boolean pushDir(File localFileDir, String deviceFilePath, excludedDirectories)

內容供應器回呼,可將 dir 推送至 URI 位置。

boolean pushFile(File fileToPush, String deviceFilePath)

可將檔案推送至 URI 位置的內容供應器回呼。

boolean setUp()

請確認內容供應器輔助 APK 已安裝,並可隨時使用。

void tearDown()

使用內容供應器的輔助工具清理裝置。

欄位

public static final String[] COLUMNS

COLUMN_ABSOLUTE_PATH

public static final String COLUMN_ABSOLUTE_PATH

COLUMN_DIRECTORY

public static final String COLUMN_DIRECTORY

COLUMN_METADATA

public static final String COLUMN_METADATA

COLUMN_MIME_TYPE

public static final String COLUMN_MIME_TYPE

COLUMN_NAME

public static final String COLUMN_NAME

內容供應商 URI

public static final String CONTENT_PROVIDER_URI

NO_RESULTS_STRING

public static final String NO_RESULTS_STRING

套件名稱:PACKAGE_NAME

public static final String PACKAGE_NAME

QUERY_INFO_VALUE

public static final String QUERY_INFO_VALUE

公用建構函式

ContentProviderHandler

public ContentProviderHandler (ITestDevice device)

建構函式。

參數
device ITestDevice

擲回
DeviceNotAvailableException

ContentProviderHandler

public ContentProviderHandler (ITestDevice device, 
                Integer userId)

參數
device ITestDevice

userId Integer

公用方法

contentProviderNotFound

public boolean contentProviderNotFound ()

如果其中一個作業失敗,而找不到內容供應器,則傳回 True。如要清除,請再次執行 setUp()

傳回
boolean

建立 EscapedContentUri

public static String createEscapedContentUri (String deviceFilePath)

傳回指定裝置路徑的完整 URI 字串 (逸出和編碼),避免非網址字元。

參數
deviceFilePath String

傳回
String

刪除檔案

public boolean deleteFile (String deviceFilePath)

內容供應器回呼,刪除 URI 位置中的檔案。檔案會從裝置內容中刪除,

參數
deviceFilePath String:待刪除檔案裝置上的路徑。

傳回
boolean 如果成功,則為 True,否則傳回 False

擲回
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

doFileExist

public boolean doesFileExist (String deviceFilePath)

判斷裝置上是否有檔案或非空白目錄。

參數
deviceFilePath String:檢查裝置是否存在的絕對檔案路徑。

傳回
boolean 若檔案/目錄存在,則為 True,否則傳回 False。如果目錄空白,也會傳回 False。

擲回
DeviceNotAvailableException

getUserId

public Integer getUserId ()

傳回用於初始化這個執行個體的 userId。

傳回
Integer

拉克迪爾

public boolean pullDir (String deviceFilePath, 
                File localDir)

使用內容供應器,以遞迴方式提取裝置上的目錄內容。

參數
deviceFilePath String:遠端來源的絕對檔案路徑

localDir File:要提取檔案的本機目錄

傳回
boolean true 表示成功提取檔案。否則為 false

擲回
DeviceNotAvailableException

PullFile

public boolean pullFile (String deviceFilePath, 
                File localFile)

內容供應器回呼,可從 URI 位置提取檔案至本機檔案。

參數
deviceFilePath String:要提取檔案的裝置路徑。

localFile File:用於儲存內容的 ERROR(/File)。如為非空白,則會替換內容。

傳回
boolean 如果成功,則為 True,否則傳回 False

擲回
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

PushDir

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

內容供應器回呼,可將 dir 推送至 URI 位置。

參數
localFileDir File:要推送的目錄

deviceFilePath String:裝置端位置資訊

excludedDirectories :未包含在推送作業中的目錄。

傳回
boolean 若成功,則為 True

擲回
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

推送檔案

public boolean pushFile (File fileToPush, 
                String deviceFilePath)

可將檔案推送至 URI 位置的內容供應器回呼。

參數
fileToPush File:要推送至裝置的 ERROR(/File)

deviceFilePath String:要推送檔案的裝置路徑。

傳回
boolean 如果成功,則為 True,否則傳回 False

擲回
com.android.tradefed.device.DeviceNotAvailableException
IllegalArgumentException
DeviceNotAvailableException

設定

public boolean setUp ()

請確認內容供應器輔助 APK 已安裝,並可隨時使用。

傳回
boolean 可供使用時為「是」,否則傳回「否」。

擲回
DeviceNotAvailableException

TearDown

public void tearDown ()

使用內容供應器的輔助工具清理裝置。

擲回
DeviceNotAvailableException