Od 27 marca 2025 r. zalecamy używanie android-latest-release zamiast aosp-main do kompilowania i wspołtworzenia AOSP. Więcej informacji znajdziesz w artykule o zmianach w AOSP.
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
BuildInfo
w TF jest powszechnie używanym obiektem do przenoszenia zasobów na potrzeby konfiguracji i uruchamiania testów.
Wszystko, od obrazów urządzeń po testowe pliki APK, jest przechowywane lub połączone w BuildInfo.
Umożliwia to jednolity sposób uzyskiwania dostępu do zasobów testowych z testu oraz odłączenie testu od uzyskiwania zasobów testowych.
Właściwości BuildInfo
Dwie główne właściwości obiektów BuildInfo to atrybuty i pliki:
Atrybuty można dodawać za pomocą #addBuildAttribute(); reprezentują one etykiety i informacje o ciągu znaków w kompilacji. Atrybutów można używać do przechowywania informacji związanych z kompilacją.
Pliki można dodawać za pomocą setFile(); plik jest śledzony i zarządzany przez BuildInfo podczas cyklu wywołania (np. prawidłowo obsługiwany podczas dzielenia). Dzięki temu test nie musi wiedzieć nic o systemie plików, a zamiast tego może polegać na abstrakcyjnym obiekcie BuildInfo, aby uzyskać zasoby.
BuildInfo na wielu urządzeniach
Gdy konfiguracja testowa jest skonfigurowana z kilkoma urządzeniami, na każdym z nich istnieje po jednym obiekcie BuildInfo. Umożliwia to wysyłanie żądań i kierowanie plików z jednego urządzenia na drugie.
BuildInfo w wielu kompilacjach
Możesz wymagać kompilacji z kilku środowisk docelowych. W takich przypadkach dla każdego celu istnieje 1 obiekt BuildInfo. Umożliwia to wysyłanie żądań i kierowanie plików z dowolnego źródła.
Format proto
BuildInfo można zserializować w formacie protobuf, aby ułatwić jego używanie w różnych systemach (w razie potrzeby).
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2025-07-27 UTC.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-07-27 UTC."],[],[],null,["# BuildInfo in Tradefed\n\n[`BuildInfo`](https://android.googlesource.com/platform/tools/tradefederation/+/refs/heads/android16-release/src/com/android/tradefed/build/BuildInfo.java)\nin TF is a widely used object to carry resources for test setup and runs.\nEverything from device images to test APKs are stored or linked in `BuildInfo`.\nThis allows a unified way to access test resources from a test\nand decouple the test from getting test resources.\n\nBuildInfo properties\n--------------------\n\nThe two main properties of `BuildInfo` objects are attributes and files:\n\n- *Attributes* can be added with `#addBuildAttribute()`; they represent labels and string information to the builds. Attributes can be used to store information related to the build.\n- *Files* can be added with `setFile()`; the file is tracked and managed by `BuildInfo` during the invocation lifecycle (for example, properly handled during sharding). This avoids the need for the test to know anything about the file system and instead can rely on the abstracted `BuildInfo` object to get their resources.\n\n| **Note:** Files should always be stored in `Files` and not in `Attributes` as an absolute path. Attributes are treated as pure Java strings, and the reference could be invalidated during part of the invocation lifecycle.\n\nBuildInfo in multi-devices\n--------------------------\n\nWhen a test configuration is set up with multiple devices, one `BuildInfo`\nobject exists per device. This allows requesting and targeting files from one\ndevice to another.\n\nBuildInfo in multi-builds\n-------------------------\n\nIt's possible to require builds from several targets. In these cases, one\n`BuildInfo` object exists per target. This allows requesting and targeting\nfiles from any target.\n\nProto format\n------------\n\n`BuildInfo` is serializable in a protobuf format to make its usage easier across\nsystems if needed."]]