IBuildInfo
public
interface
IBuildInfo
implements
Serializable
| com.android.tradefed.build.IBuildInfo |
保存受測版本的相關資訊。
摘要
常數 | |
|---|---|
String |
REMOTE_FILE_PREFIX
名稱中使用的前置字串,表示檔案已設為延遲下載。 |
String |
REMOTE_FILE_VERSION
遠端檔案沒有版本。 |
String |
UNKNOWN_BUILD_ID
建構 ID 不明時的預設值。 |
公用方法 | |
|---|---|
default
void
|
addAppPackageFile(File appPackageFile, String version)
新增本機 APK 檔案及其相關聯的版本。 |
abstract
void
|
addBuildAttribute(String attributeName, String attributeValue)
新增建構屬性。 |
default
void
|
addBuildAttributes(Map<String, String> buildAttributes)
新增建構屬性 |
default
void
|
allowStagingRemoteFile(boolean stageRemoteFile)
設定權限,允許暫存遠端檔案。 |
abstract
void
|
cleanUp()
清理所有暫時建構檔案 |
abstract
void
|
cleanUp(List<File> doNotDelete)
|
abstract
IBuildInfo
|
clone()
複製 |
default
List<VersionedFile>
|
getAppPackageFiles()
取得一組本機應用程式 APK 檔案及其版本的副本。 |
abstract
Map<String, String>
|
getBuildAttributes()
取得一組描述建構作業的其他屬性名稱/值配對。 |
abstract
String
|
getBuildBranch()
選用方法,可傳回用於產生受測建構作業的來源控制分支版本。 |
abstract
String
|
getBuildFlavor()
可選用方法,用於傳回測試中的建構類型。 |
abstract
String
|
getBuildId()
傳回受測版本的專屬 ID。 |
abstract
String
|
getBuildTargetName()
傳回測試中的建構版本完整名稱。 |
abstract
String
|
getDeviceSerial()
|
abstract
File
|
getFile(String name)
Helper method to retrieve a file with given name. |
default
File
|
getFile(BuildInfoKey.BuildInfoFileKey key)
輔助方法,用於擷取具有指定 |
abstract
Collection<VersionedFile>
|
getFiles()
傳回這個 |
abstract
Set<IBuildInfo.BuildInfoProperties>
|
getProperties()
傳回目前在 |
default
Set<File>
|
getRemoteFiles()
取得延遲下載的建構構件路徑。 |
abstract
String
|
getTestTag()
Return a unique name for the tests being run. |
default
String
|
getVersion(BuildInfoKey.BuildInfoFileKey key)
輔助方法,用於擷取具有指定 |
abstract
String
|
getVersion(String name)
輔助方法,用於擷取具有指定名稱的檔案版本。 |
default
VersionedFile
|
getVersionedFile(BuildInfoKey.BuildInfoFileKey key)
輔助方法,用於擷取具有指定 |
default
VersionedFile
|
getVersionedFile(String name)
輔助方法,用於擷取具有指定名稱的 |
default
Set<String>
|
getVersionedFileKeys()
傳回可透過 |
default
List<VersionedFile>
|
getVersionedFiles(BuildInfoKey.BuildInfoFileKey key)
輔助方法,用於擷取與指定 |
default
void
|
removeBuildAttribute(String attributeName)
從追蹤中移除指定的 attributeName。 |
abstract
void
|
setBuildBranch(String branch)
設定建構分支版本 |
abstract
void
|
setBuildFlavor(String buildFlavor)
設定建構變種版本。 |
abstract
void
|
setBuildId(String buildId)
設定受測版本的專屬 ID。 |
abstract
void
|
setDeviceSerial(String serial)
設定與這個建構版本相關聯的 |
default
void
|
setFile(BuildInfoKey.BuildInfoFileKey key, File file, String version)
儲存此建構資訊中指定 |
abstract
void
|
setFile(String name, File file, String version)
Stores an file with given name in this build info. |
abstract
void
|
setProperties(BuildInfoProperties... properties)
為 |
abstract
void
|
setTestTag(String testTag)
為執行的測試設定專屬名稱。 |
default
File
|
stageRemoteFile(String fileName, File workingDir)
在建構資訊的根目錄中,暫存屬於遠端檔案的檔案。 |
default
BuildInformation.BuildInfo
|
toProto()
將 BuildInfo 執行個體序列化為 protobuf。 |
常數
REMOTE_FILE_PREFIX
public static final String REMOTE_FILE_PREFIX
名稱中使用的前置字串,表示檔案已設為延遲下載。
常數值: "remote_file:"
REMOTE_FILE_VERSION
public static final String REMOTE_FILE_VERSION
遠端檔案沒有版本。
常數值: ""
UNKNOWN_BUILD_ID
public static final String UNKNOWN_BUILD_ID
建構 ID 不明時的預設值。
常數值: "-1"
公用方法
addAppPackageFile
public void addAppPackageFile (File appPackageFile,
String version)新增本機 APK 檔案及其相關聯的版本。請注意,系統會按照透過這個方法加入 APK 的順序,從 getAppPackageFiles() 傳回 APK。
| 參數 | |
|---|---|
appPackageFile |
File |
version |
String |
addBuildAttribute
public abstract void addBuildAttribute (String attributeName,
String attributeValue)新增建構屬性。這無法覆寫現有的 attributeName。
| 參數 | |
|---|---|
attributeName |
String:專屬屬性名稱 |
attributeValue |
String:屬性值 |
addBuildAttributes
public void addBuildAttributes (Map<String, String> buildAttributes)
新增建構屬性
| 參數 | |
|---|---|
buildAttributes |
Map:要新增的屬性對應表 |
allowStagingRemoteFile
public void allowStagingRemoteFile (boolean stageRemoteFile)
設定權限,允許暫存遠端檔案。
| 參數 | |
|---|---|
stageRemoteFile |
boolean |
cleanUp
public abstract void cleanUp ()
清理所有暫時建構檔案
cleanUp
public abstract void cleanUp (List<File> doNotDelete)
cleanUp() 版本,其中部分檔案未刪除。
| 參數 | |
|---|---|
doNotDelete |
List |
getAppPackageFiles
public List<VersionedFile> getAppPackageFiles ()
取得本機應用程式 APK 檔案和版本的副本。傳回的順序與 APK 新增至 IAppBuildInfo 的順序相同。
| 傳回 | |
|---|---|
List<VersionedFile> |
|
getBuildAttributes
public abstract Map<String, String> getBuildAttributes ()
取得一組描述建構作業的其他屬性名稱/值配對。
| 傳回 | |
|---|---|
Map<String, String> |
建構屬性的 Map。不會是 null,但可能為空白。 |
getBuildBranch
public abstract String getBuildBranch ()
選用方法,可傳回用於產生受測建構作業的來源控制分支。
| 傳回 | |
|---|---|
String |
建構分支版本或 null (如未設定/不適用) |
getBuildFlavor
public abstract String getBuildFlavor ()
可選用方法,用於傳回測試中的建構類型。
Android 平台建構作業的常見實作方式是傳回 (建構產品)-(建構作業系統)-(建構變化版本)。ie generic-linux-userdebug
| 傳回 | |
|---|---|
String |
如果未設定/不適用,則為建構版本或 null |
getBuildId
public abstract String getBuildId ()
傳回受測版本的專屬 ID。一律不得為空值。預設值為 UNKNOWN_BUILD_ID。
| 傳回 | |
|---|---|
String |
|
getBuildTargetName
public abstract String getBuildTargetName ()
傳回測試版本的完整名稱。
常見的做法是結合建構變種版本和分支版本名稱,建構建構目標名稱。[即 (分支版本名稱)-(建構版本)]
| 傳回 | |
|---|---|
String |
|
getDeviceSerial
public abstract String getDeviceSerial ()
| 傳回 | |
|---|---|
String |
執行這個建構作業的 ITestDevice 序號。如果這個版本未與任何裝置建立關聯,則傳回 null
。 |
getFile
public abstract File getFile (String name)
輔助方法,用於擷取具有指定名稱的檔案。
| 傳回 | |
|---|---|
File |
圖片檔案,或 null (如果找不到) |
getFile
public File getFile (BuildInfoKey.BuildInfoFileKey key)
輔助方法,用於擷取具有指定 BuildInfoFileKey 的檔案。
| 參數 | |
|---|---|
key |
BuildInfoKey.BuildInfoFileKey:要求的 BuildInfoFileKey。 |
| 傳回 | |
|---|---|
File |
圖片檔案,或 null (如果找不到) |
getFiles
public abstract Collection<VersionedFile> getFiles ()
傳回這個 BuildInfo 中儲存的所有 VersionedFile。
| 傳回 | |
|---|---|
Collection<VersionedFile> |
|
getProperties
public abstract Set<IBuildInfo.BuildInfoProperties> getProperties ()
傳回目前在 IBuildInfo 上設定的屬性副本。
| 傳回 | |
|---|---|
Set<IBuildInfo.BuildInfoProperties> |
|
getRemoteFiles
public Set<File> getRemoteFiles ()
取得延遲下載的建構構件路徑。
| 傳回 | |
|---|---|
Set<File> |
|
getTestTag
public abstract String getTestTag ()
傳回正在執行的測試專屬名稱。
| 傳回 | |
|---|---|
String |
|
getVersion
public String getVersion (BuildInfoKey.BuildInfoFileKey key)
輔助方法,用於擷取具有指定 BuildInfoFileKey 的檔案版本。
| 參數 | |
|---|---|
key |
BuildInfoKey.BuildInfoFileKey:要求的 BuildInfoFileKey。 |
| 傳回 | |
|---|---|
String |
映像檔版本或 null (如果找不到) |
getVersion
public abstract String getVersion (String name)
輔助方法,用於擷取具有指定名稱的檔案版本。
| 傳回 | |
|---|---|
String |
映像檔版本或 null (如果找不到) |
getVersionedFile
public VersionedFile getVersionedFile (BuildInfoKey.BuildInfoFileKey key)
輔助方法,可使用指定 BuildInfoFileKey 擷取 VersionedFile。
| 參數 | |
|---|---|
key |
BuildInfoKey.BuildInfoFileKey:要求的 BuildInfoFileKey。 |
| 傳回 | |
|---|---|
VersionedFile |
版本化檔案,或找不到時為 null |
getVersionedFile
public VersionedFile getVersionedFile (String name)
輔助方法,用於擷取具有指定名稱的 VersionedFile。
| 傳回 | |
|---|---|
VersionedFile |
版本化檔案,或找不到時為 null |
getVersionedFileKeys
public Set<String> getVersionedFileKeys ()
傳回可透過 getFile(BuildInfoFileKey) 查詢 VersionedFile 的金鑰組合。
| 傳回 | |
|---|---|
Set<String> |
|
getVersionedFiles
public List<VersionedFile> getVersionedFiles (BuildInfoKey.BuildInfoFileKey key)
輔助方法,可擷取與指定 BuildInfoFileKey 相關聯的 VersionedFile 清單。如果金鑰允許儲存清單。
| 參數 | |
|---|---|
key |
BuildInfoKey.BuildInfoFileKey:要求的 BuildInfoFileKey。 |
| 傳回 | |
|---|---|
List<VersionedFile> |
版本化檔案,或找不到時為 null |
removeBuildAttribute
public void removeBuildAttribute (String attributeName)
從追蹤中移除指定 attributeName。
| 參數 | |
|---|---|
attributeName |
String:要停止追蹤的屬性 |
setBuildBranch
public abstract void setBuildBranch (String branch)
設定建構分支版本
| 參數 | |
|---|---|
branch |
String:分支名稱 |
setBuildFlavor
public abstract void setBuildFlavor (String buildFlavor)
設定建構變種版本。
setBuildId
public abstract void setBuildId (String buildId)
設定受測版本的專屬 ID。一律不得為空值。
| 參數 | |
|---|---|
buildId |
String |
setDeviceSerial
public abstract void setDeviceSerial (String serial)
設定與這個版本相關聯的 ITestDevice 序號。
| 參數 | |
|---|---|
serial |
String:執行此建構作業的 ITestDevice 序號。 |
setFile
public void setFile (BuildInfoKey.BuildInfoFileKey key, File file, String version)
儲存此建構資訊中指定 BuildInfoFileKey 的檔案。
| 參數 | |
|---|---|
key |
BuildInfoKey.BuildInfoFileKey:檔案的專屬名稱 (以 BuildInfoFileKey 為準)。 |
file |
File:當地 File |
version |
String:檔案版本 |
setFile
public abstract void setFile (String name,
File file,
String version)將具有指定名稱的檔案儲存在這個建構資訊中。
| 參數 | |
|---|---|
name |
String:檔案的專屬名稱 |
file |
File:當地 File |
version |
String:檔案版本 |
setProperties
public abstract void setProperties (BuildInfoProperties... properties)
為 IBuildInfo 執行個體設定 BuildInfoProperties。覆寫先前設定的任何現有屬性。
| 參數 | |
|---|---|
properties |
BuildInfoProperties:要新增的屬性清單。 |
setTestTag
public abstract void setTestTag (String testTag)
為執行的測試設定專屬名稱。
| 參數 | |
|---|---|
testTag |
String |
stageRemoteFile
public File stageRemoteFile (String fileName,
File workingDir)在建構資訊的根目錄中,暫存屬於遠端檔案的檔案。
TODO(b/138416078):當測試所需的模組可正確建構輸出至測試模組的目錄本身時,請移除這個介面及其呼叫端。
| 參數 | |
|---|---|
fileName |
String:要在遠端檔案中尋找的檔案名稱。 |
workingDir |
File:要暫存檔案的目錄 File 物件。 |
| 傳回 | |
|---|---|
File |
在 local workingDir 中暫存的檔案 File 物件。 |
toProto
public BuildInformation.BuildInfo toProto ()
將 BuildInfo 執行個體序列化為 protobuf。
| 傳回 | |
|---|---|
BuildInformation.BuildInfo |
|