CasUtil
public
final
class
CasUtil
extends Object
| java.lang.Object | |
| ↳ | com.android.tradefed.util.CasUtil |
摘要
常量 | |
|---|---|
String |
ANDROID_INFO_FILENAME
|
String |
CAS_LOG_ROOT_NAME
|
String |
CHUNKS_DIR_NAME
|
String |
CHUNKS_INDEX_FILENAME
|
String |
SUPER_IMAGE_FILENAME
|
String |
SYSTEM_IMAGE_FILENAME
|
公共方法 | |
|---|---|
static
void
|
checkCasClientFlags(Path clientPath, Consumer<Set<String>> flagsConsumerFn)
检查 CAS 客户端支持的标志。 |
static
Path
|
createUniqueCasLogDir(Path logDirRootPath)
|
static
void
|
ensureCasClientExecutable(Path casClientPath, boolean logMetricsIfNotExecutable)
|
static
String
|
getCasLogFromDir(Path logDirPath)
从指定目录中读取 CAS 日志文件“ |
static
String
|
getCasLogFromDir(Path logDirPath, String clientName, String tag, boolean removeLogDirAfterRead)
从给定目录读取 CAS 日志文件。 |
static
String
|
getCasLogFromDir(Path logDirPath, String clientName)
从给定目录读取 CAS 日志文件“ |
static
boolean
|
isChunkedDir(Path path)
如果给定路径是有效的 FastCDC 分块目录,则返回 true。 |
static
boolean
|
isUncompressedDeviceImage(Path path)
如果指定路径是有效的未压缩设备映像,则返回 true。 |
static
void
|
logCasClientVersion(Path clientPath, Consumer<String> versionHandlerFn)
|
static
void
|
logCasClientVersion(Path clientPath)
|
static
void
|
validateChunkedDir(Path path)
验证给定路径是否为有效的 FastCDC 分块目录。 |
常量
ANDROID_INFO_FILENAME
public static final String ANDROID_INFO_FILENAME
常量值: "android-info.txt"
CAS_LOG_ROOT_NAME
public static final String CAS_LOG_ROOT_NAME
常量值: "tf-cas-fuse-log-root"
CHUNKS_DIR_NAME
public static final String CHUNKS_DIR_NAME
常量值: "_chunks"
CHUNKS_INDEX_FILENAME
public static final String CHUNKS_INDEX_FILENAME
常量值: "_chunks_index.json"
SUPER_IMAGE_FILENAME
public static final String SUPER_IMAGE_FILENAME
常量值: “super.img”
SYSTEM_IMAGE_FILENAME
public static final String SYSTEM_IMAGE_FILENAME
常量值: “system.img”
公共方法
checkCasClientFlags
public static void checkCasClientFlags (Path clientPath,
Consumer<Set<String>> flagsConsumerFn)检查 CAS 客户端支持的标志。
| 参数 | |
|---|---|
clientPath |
Path:CAS 客户端二进制文件的路径。 |
flagsConsumerFn |
Consumer:接受支持的标志集的消费者。 |
createUniqueCasLogDir
public static Path createUniqueCasLogDir (Path logDirRootPath)
| 参数 | |
|---|---|
logDirRootPath |
Path |
| 返回 | |
|---|---|
Path |
|
| 抛出 | |
|---|---|
IOException |
|
ensureCasClientExecutable
public static void ensureCasClientExecutable (Path casClientPath,
boolean logMetricsIfNotExecutable)| 参数 | |
|---|---|
casClientPath |
Path |
logMetricsIfNotExecutable |
boolean |
getCasLogFromDir
public static String getCasLogFromDir (Path logDirPath)
从指定目录读取 CAS 日志文件“
| 参数 | |
|---|---|
logDirPath |
Path:要从中读取 CAS 日志文件的目录路径。 |
| 返回 | |
|---|---|
String |
CAS 日志文件内容;如果无法读取日志文件,则为 null。 |
getCasLogFromDir
public static String getCasLogFromDir (Path logDirPath,
String clientName,
String tag,
boolean removeLogDirAfterRead)从给定目录读取 CAS 日志文件。
| 参数 | |
|---|---|
logDirPath |
Path:要从中读取 CAS 日志文件的目录路径。 |
clientName |
String:CAS 客户端的名称。 |
tag |
String:CAS 日志文件的标记,例如“INFO”“WARNING”“ERROR”等。 |
removeLogDirAfterRead |
boolean:是否在读取日志文件后移除日志目录。 |
| 返回 | |
|---|---|
String |
CAS 日志文件内容。 |
| 抛出 | |
|---|---|
IOException |
如果无法读取 CAS 日志文件。 |
getCasLogFromDir
public static String getCasLogFromDir (Path logDirPath,
String clientName)从给定目录读取 CAS 日志文件“
| 参数 | |
|---|---|
logDirPath |
Path:要从中读取 CAS 日志文件的目录路径。 |
clientName |
String:CAS 客户端的名称。 |
| 返回 | |
|---|---|
String |
CAS 日志文件内容,如果无法读取日志文件,则为“”。 |
isChunkedDir
public static boolean isChunkedDir (Path path)
如果给定路径是有效的 FastCDC 分块目录,则返回 true。
| 参数 | |
|---|---|
path |
Path |
| 返回 | |
|---|---|
boolean |
|
isUncompressedDeviceImage
public static boolean isUncompressedDeviceImage (Path path)
如果指定路径是有效的未压缩设备映像,则返回 true。
为了进行最可靠的检查,请验证是否存在 (system.img 或 super.img) 和 android-info.txt。
system.img/super.img:确认核心操作系统数据是否存在。
android-info.txt:确认这是一个官方 build 软件包,其中包含描述设备和 build 版本的元数据。
在非未压缩的设备映像且能正确处理缺少 boot.img 的电视 build 等情况的目录中,这种组合极不可能出现。
| 参数 | |
|---|---|
path |
Path:设备映像的绝对路径。 |
| 返回 | |
|---|---|
boolean |
如果路径是有效的未压缩设备映像,则返回 true,否则返回 false。 |
logCasClientVersion
public static void logCasClientVersion (Path clientPath,
Consumer<String> versionHandlerFn)| 参数 | |
|---|---|
clientPath |
Path |
versionHandlerFn |
Consumer |
logCasClientVersion
public static void logCasClientVersion (Path clientPath)
| 参数 | |
|---|---|
clientPath |
Path |
validateChunkedDir
public static void validateChunkedDir (Path path)
验证给定路径是否为有效的 FastCDC 分块目录。
device_image.zip/
_chunks/
_chunks_index.json
chunk1.img
_chunks_index.json
| 参数 | |
|---|---|
path |
Path:分块目录的路径。 |
| 抛出 | |
|---|---|
IOException |
如果路径不是有效的 FastCDC 分块目录。 |