ContentProviderHandler
public
class
ContentProviderHandler
extends Object
| java.lang.Object | |
| ↳ | com.android.tradefed.device.contentprovider.ContentProviderHandler |
用于抽象化内容提供程序交互并允许使用设备端内容提供程序进行不同操作的处理程序。
此类中的所有实现都应注意当前在设备上运行的用户。
摘要
常量 | |
|---|---|
String |
COLUMN_ABSOLUTE_PATH
|
String |
COLUMN_DIRECTORY
|
String |
COLUMN_METADATA
|
String |
COLUMN_MIME_TYPE
|
String |
COLUMN_NAME
|
String |
CONTENT_PROVIDER_URI
|
String |
NO_RESULTS_STRING
|
String |
PACKAGE_NAME
|
String |
QUERY_INFO_VALUE
|
字段 | |
|---|---|
public
static
final
String[] |
COLUMNS
|
公共构造函数 | |
|---|---|
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)
确定设备上是否存在文件或非空目录。 |
IRunUtil
|
getRunUtil()
|
Integer
|
getUserId()
返回此实例初始化时所用的 userId。 |
boolean
|
pullDir(String deviceFilePath, File localDir)
使用内容提供程序从设备递归拉取目录内容。 |
boolean
|
pullFile(String deviceFilePath, File localFile)
从 URI 位置提取文件到本地文件的 content provider 回调。 |
boolean
|
pushDir(File localFileDir, String deviceFilePath,
将目录推送到 URI 位置的内容提供程序回调。 |
boolean
|
pushFile(File fileToPush, String deviceFilePath)
将文件推送到 URI 位置的内容提供程序回调。 |
void
|
setRunUtil(IRunUtil runUtil)
|
boolean
|
setUp()
确保内容提供程序辅助 APK 已安装并可供使用。 |
void
|
tearDown()
从内容提供程序帮助程序中清理设备。 |
常量
COLUMN_ABSOLUTE_PATH
public static final String COLUMN_ABSOLUTE_PATH
常量值: "absolute_path"
COLUMN_DIRECTORY
public static final String COLUMN_DIRECTORY
常量值: "is_directory"
COLUMN_METADATA
public static final String COLUMN_METADATA
常量值: "metadata"
COLUMN_MIME_TYPE
public static final String COLUMN_MIME_TYPE
常量值: "mime_type"
COLUMN_NAME
public static final String COLUMN_NAME
常量值: "name"
CONTENT_PROVIDER_URI
public static final String CONTENT_PROVIDER_URI
常量值: "content://android.tradefed.contentprovider"
NO_RESULTS_STRING
public static final String NO_RESULTS_STRING
常量值: “未找到结果。”
PACKAGE_NAME
public static final String PACKAGE_NAME
常量值: "android.tradefed.contentprovider"
QUERY_INFO_VALUE
public static final String QUERY_INFO_VALUE
常量值: "INFO"
字段
列
public static final String[] COLUMNS
公共构造函数
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 |
|
createEscapedContentUri
public static String createEscapedContentUri (String deviceFilePath)
返回指定设备路径的完整 URI 字符串,该字符串经过转义和编码,可避免出现非网址字符。
| 参数 | |
|---|---|
deviceFilePath |
String |
| 返回 | |
|---|---|
String |
|
deleteFile
public boolean deleteFile (String deviceFilePath)
用于删除 URI 位置处文件的 content provider 回调。文件将从设备内容中删除。
| 参数 | |
|---|---|
deviceFilePath |
String:要删除的文件的设备路径。 |
| 返回 | |
|---|---|
boolean |
如果成功,则返回 True;否则,返回 False |
| 抛出 | |
|---|---|
|
com.android.tradefed.device.DeviceNotAvailableException |
DeviceNotAvailableException |
|
doesFileExist
public boolean doesFileExist (String deviceFilePath)
确定设备上是否存在相应文件或非空目录。
| 参数 | |
|---|---|
deviceFilePath |
String:设备上要检查是否存在的绝对文件路径。 |
| 返回 | |
|---|---|
boolean |
如果文件/目录存在,则返回 True,否则返回 False。如果目录为空,该方法也会返回 False。 |
| 抛出 | |
|---|---|
DeviceNotAvailableException |
|
getUserId
public Integer getUserId ()
返回相应实例初始化时所用的 userId。
| 返回 | |
|---|---|
Integer |
|
pullDir
public boolean pullDir (String deviceFilePath,
File localDir)使用内容提供程序从设备以递归方式拉取目录内容。
| 参数 | |
|---|---|
deviceFilePath |
String:远程源的绝对文件路径 |
localDir |
File:要将文件拉取到的本地目录 |
| 返回 | |
|---|---|
boolean |
如果成功拉取文件,则为 true。否则为 false。 |
| 抛出 | |
|---|---|
DeviceNotAvailableException |
如果与设备的连接丢失且无法恢复。 |
pullFile
public boolean pullFile (String deviceFilePath,
File localFile)从 URI 位置提取文件到本地文件的 content provider 回调。
| 参数 | |
|---|---|
deviceFilePath |
String:设备上要从中提取文件的路径。 |
localFile |
File:用于存储内容的 ERROR(/File)。如果非空,则替换内容。 |
| 返回 | |
|---|---|
boolean |
如果成功,则返回 True;否则,返回 False |
| 抛出 | |
|---|---|
|
com.android.tradefed.device.DeviceNotAvailableException |
DeviceNotAvailableException |
|
pushDir
public boolean pushDir (File localFileDir,
String deviceFilePath,
excludedDirectories) 将目录推送到 URI 位置的内容提供程序回调。
| 参数 | |
|---|---|
localFileDir |
File:要推送的目录 |
deviceFilePath |
String:设备上的位置 |
excludedDirectories |
:未包含在推送中的目录。 |
| 返回 | |
|---|---|
boolean |
如果成功,则为 true |
| 抛出 | |
|---|---|
|
com.android.tradefed.device.DeviceNotAvailableException |
DeviceNotAvailableException |
|
pushFile
public boolean pushFile (File fileToPush,
String deviceFilePath)将文件推送到 URI 位置的内容提供程序回调。
| 参数 | |
|---|---|
fileToPush |
File:要推送到设备的 ERROR(/File)。 |
deviceFilePath |
String:设备上用于推送文件的路径。 |
| 返回 | |
|---|---|
boolean |
如果成功,则返回 True;否则,返回 False |
| 抛出 | |
|---|---|
|
com.android.tradefed.device.DeviceNotAvailableException |
|
IllegalArgumentException |
DeviceNotAvailableException |
|
setUp
public boolean setUp ()
确保内容提供程序辅助 APK 已安装并可供使用。
| 返回 | |
|---|---|
boolean |
如果准备就绪,则为 True;否则为 False。 |
| 抛出 | |
|---|---|
DeviceNotAvailableException |
|