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)
|
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 記錄檔內容,如果無法讀取記錄檔,則為空值。 |
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)| 參數 | |
|---|---|
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:確認核心 OS 資料是否存在。
android-info.txt:確認這是官方建構套件,其中包含裝置和建構版本的中繼資料。
在非未壓縮裝置映像檔的目錄中,這種組合極不可能發生,且會正確處理 boot.img 不存在的電視版本等情況。
| 參數 | |
|---|---|
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 分塊目錄。 |