Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Podstawowy obraz systemu (GSI) to czysta implementacja Androida z niezmodyfikowanym kodem Projektu Android Open Source (AOSP), którą można uruchamiać na różnych urządzeniach z Androidem.
Deweloperzy aplikacji mogą instalować i uruchamiać najnowsze pliki GSI Androida, aby testować aplikacje na różnych urządzeniach z Androidem i za pomocą plików GSI z różnych etapów wydania systemu Android, w tym wersji przedpremierowych i beta. Dodanie GSI do procesów weryfikacji i testowania może przynieść Ci dodatkowe korzyści:
szerszy zakres testów na większej liczbie rzeczywistych urządzeń;
Więcej czasu na rozwiązanie problemów ze zgodnością aplikacji
Więcej możliwości rozwiązywania zgłaszanych przez deweloperów aplikacji problemów ze zgodnością z Androidem
Projekt GSI jest otwarty i pomaga ulepszać ekosystem Androida, ponieważ zapewnia więcej sposobów na poprawę jakości aplikacji i systemu operacyjnego przed każdą wersją Androida.
Ilustracja 1. Obrazy GSI można instalować na wielu różnych urządzeniach, a czasami nawet w wersjach Androida, dla których producent urządzenia nie udostępnia własnego obrazu systemu.
Obrazy GSI zawierają te same podstawowe funkcje systemowe na wszystkich urządzeniach, na których są zainstalowane. Inaczej mówiąc, GSI nie zawiera dostosowań producenta urządzenia. Z tego powodu w tych sytuacjach mogą wystąpić różnice w zachowaniu:
Interakcje z interfejsem
Przepływy pracy, które wymagają nowszych funkcji sprzętowych
Sprawdzanie zgodności urządzenia
Obrazy GSI mogą działać tylko na urządzeniach o tych cechach:
Program rozruchowy jest odblokowany.
W pełni zgodny z Treble.
Wprowadzone na rynek z Androidem 9 (API na poziomie 28) lub nowszym. Urządzenia, które zostały uaktualnione do Androida 9 z wcześniejszej wersji, mogą obsługiwać GSI lub nie.
Aby sprawdzić, czy Twoje urządzenie może korzystać z GSI i którą wersję systemu operacyjnego GSI należy zainstalować, wykonaj te czynności:
Sprawdź, czy urządzenie obsługuje technologię Treble. W tym celu uruchom to polecenie:
adb shell getprop ro.treble.enabled
Jeśli odpowiedź to false, urządzenie nie jest zgodne z GSI i nie należy kontynuować. Jeśli odpowiedź to true, przejdź do następnego kroku.
Sprawdź, czy jest obsługiwana zgodność między wersjami. W tym celu uruchom to polecenie:
adb shell cat /system/etc/ld.config.version_identifier.txt \
| grep -A 20 "\[vendor\]"
W danych wyjściowych w sekcji [vendor] poszukaj namespace.default.isolated.
Jeśli wartość tego atrybutu to true, urządzenie w pełni obsługuje pakiet Vendor Native Development Kit (VNDK) i może używać dowolnej wersji systemu operacyjnego GSI nowszej niż wersja systemu operacyjnego na urządzeniu. W miarę możliwości używaj najnowszej dostępnej wersji systemu operacyjnego GSI.
Jeśli wartość atrybutu to false, urządzenie nie jest w pełni zgodne z VNDK i może używać tylko obrazu GSI dla tej samej wersji systemu operacyjnego na urządzeniu. Na przykład urządzenie z Androidem 10 (wersja interfejsu API 29), które nie jest zgodne z VNDK, może wczytać tylko obraz GSI Androida 10.
Typ architektury procesora GSI musi być zgodny z architekturą procesora urządzenia. Aby znaleźć odpowiednią architekturę procesora dla obrazu GSI, uruchom to polecenie:
adb shell getprop ro.product.cpu.abi
Na podstawie wyniku określ, którego obrazu GSI użyć podczas flashowania urządzenia. Na przykład na Pixelu 5 dane wyjściowe wskazywałyby, że architektura procesora to arm64-v8a, więc użyjesz typu arm64 obrazu GSI.
Pobieranie obrazów GSI
Istnieje kilka sposobów uzyskania GSI, w zależności od potrzeb związanych z programowaniem:
W przypadku wersji GSI Androida w wersji zapoznawczej i GSI Androida z GMS pobierz obrazy ze strony z wersjami GSI.
Gotowe obrazy GSI bez aplikacji GMS możesz pobrać ze strony CI AOSP:
Aby utworzyć obrazy GSI Androida bez GMS, pobierz kod źródłowy z AOSP i utwórz obrazy GSI.
Instalowanie GSI
Instalacja GSI zależy od urządzenia. Skontaktuj się z producentem urządzenia, aby uzyskać informacje o dokładnych narzędziach i procedurach. W przypadku urządzeń Google Pixel, takich jak Pixel 3 i nowsze, można zainstalować aplikację na kilka sposobów:
Korzystanie z dynamicznej aktualizacji systemu (DSU) na urządzeniach z Androidem 10 lub nowszym: zobacz stronę Dynamiczne aktualizacje systemu.
Prześlij opinię
Obrazy GSI mają pomóc w weryfikacji aplikacji na Androidzie. Dziękujemy za Twoją opinię na temat obrazów, narzędzi i procesu korzystania z obrazów GSI na urządzeniach.
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-08-25 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-08-25 UTC."],[],[],null,["# Generic System Images (GSIs)\n\nA Generic System Image ([GSI](https://source.android.com/setup/build/gsi)) is a\n*pure Android* implementation with unmodified Android Open Source Project (AOSP)\ncode, runnable on a variety of Android devices.\n\nApp developers can install and run the latest Android GSIs to perform app\ntesting on a variety of existing Android devices and using GSIs from different\nAndroid OS release stages, including Developer Preview and Beta builds. Adding\nGSIs to your verification and testing processes can provide you with some extra\nbenefits:\n\n- Broader test coverage on a greater set of real devices\n- More time to fix app compatibility issues\n- More opportunities to fix compatibility issues in Android that are reported by app developers\n\nThe GSI project is [open\nsource](https://android.googlesource.com/platform/manifest/+/refs/heads/pie-gsi#)\nand helps improve the Android ecosystem by providing more ways to improve app\nand OS quality before each release of Android.\n**Figure 1**: GSIs can be installed across a broad range of devices, and sometimes even for versions of Android that a device manufacturer doesn't provide their own system image for.\n\nGSIs include the same core system functionalities for all devices that they're\ninstalled on. In other words, a GSI does not include device manufacturer's\ncustomizations. Because of this, you might encounter behavioral differences in\nthe following situations:\n\n- Interactions that involve the UI\n- Workflows that request newer hardware features\n\nCheck device compliance\n-----------------------\n\nGSIs can only function on devices with the following characteristics:\n\n- Bootloader is unlocked.\n- Fully Treble-compliant.\n- Launched with Android 9 (API level 28) or higher. Devices upgraded to Android 9 from an earlier version might or might not support GSIs.\n\n| **Warning:** Attempting to flash a GSI to a non-compliant device could result in your device becoming non-bootable. Always confirm that your device is compliant before flashing, and follow the installation steps provided by your device's manufacturer. GSIs don't support rollback, so you will need a recovery method and original system ROM to revert to the original system.\n\nTo determine whether your device can use a GSI and which GSI OS version you\nshould install, do the following:\n\n1. Check for Treble support by running the following command:\n\n ```\n adb shell getprop ro.treble.enabled\n ```\n\n If the response is `false`, the device isn't compatible with GSIs and you\n shouldn't continue. If the response is `true`, continue to the next step.\n2. Check for cross-version support by running the following command:\n\n ```\n adb shell cat /system/etc/ld.config.version_identifier.txt \\\n | grep -A 20 \"\\[vendor\\]\"\n ```\n | **Note:** Depending on your platform, the configuration file in the preceding command may or may not have a version identifier in it.\n\n In the output, look in the `[vendor]` section for\n `namespace.default.isolated`.\n\n If the value for that attribute is `true`, then the device fully supports\n [Vendor Native Development Kit\n (VNDK)](https://source.android.com/devices/architecture/vndk) and can use\n any GSI operating system (OS) version that is newer than the on-device OS\n version. Whenever possible, use the latest GSI OS version that is available.\n\n If the value for the attribute is `false`, then the device isn't fully\n VNDK-compliant, and the device can use only a GSI for the same on-device OS\n version. For example, an Android 10 (API version 29) device that isn't\n VNDK-compliant can load only an Android 10 GSI image.\n3. The GSI CPU architecture type must match the device's CPU architecture. To\n find the right CPU architecture for the GSI image, run the following\n command:\n\n ```\n adb shell getprop ro.product.cpu.abi\n ```\n\n Use the output to determine which GSI image to use when flashing your\n device. For example, on a Pixel 5, the output would indicate that the CPU\n architecture is `arm64-v8a`, so you would use the `arm64` type of GSI.\n\nDownload GSIs\n-------------\n\nThere are a few ways to get GSIs, depending on your development needs:\n\n- For Android Preview GSIs and Android GSIs with GMS, download the images from the [GSI release page](/topic/generic-system-image/releases).\n- For pre-built GSI images without GMS applications, download the images from\n the AOSP CI site:\n\n - [Android 10 (API level\n 29)](https://ci.android.com/builds/branches/aosp-android10-gsi/grid?)\n - [Android 11 (API level\n 30)](https://ci.android.com/builds/branches/aosp-android11-gsi/grid?)\n - [Android 12 (API level\n 31)](https://ci.android.com/builds/branches/aosp-android12-gsi/grid?)\n - [Android 13 (API level\n 33)](https://ci.android.com/builds/branches/aosp-android13-gsi/grid?)\n- To build Android GSIs without GMS, download source code from\n [AOSP](https://source.android.com/setup/build/gsi#building-gsis) and build\n your GSIs.\n\n| **Important:** Device manufacturers shouldn't use these versions of GSIs to run and submit compliance tests. Instead, device manufacturers should continue to refer to their existing communication channels, such as their Technical Account Managers for compliance-test-related activities.\n\nInstall a GSI\n-------------\n\n| **Note:** If your device has adopted [Android Verified\n| Boot](https://source.android.com/security/verifiedboot/avb) (AVB), download and flash the following image to disable AVB before flashing a GSI: [vbmeta.img](https://dl.google.com/developers/android/qt/images/gsi/vbmeta.img)\n\nInstalling a GSI is device-dependent. Refer to your device's manufacturer for\nthe exact tools and procedures. For Google Pixel devices such as the Pixel 3 and\nnewer, there are several ways to install:\n\n- Manually flashing GSI images: see [Requirements for flashing GSIs](https://source.android.com/setup/build/gsi#flashing-gsis)\n- Using Dynamic System Update (DSU) for devices that already run Android 10 or higher: see the [Dynamic System Updates](/topic/dsu) page\n\nGive feedback\n-------------\n\nGSIs are intended to help you validate your apps on Android. We appreciate your\nfeedback on the images, the tools, and the process for using GSIs on your\ndevices.\n\nTo notify us of bugs or feature requests, use the [dedicated issue tracker\ncomponent](https://issuetracker.google.com/issues/new?component=470386&template=1147338)\nfor GSIs.\n\nAdditional resources\n--------------------\n\n- [Understand the impact of Generic System Images (GSI) (Android Dev Summit\n '18)](https://www.youtube.com/watch?v=Y-HmCIHD63w)"]]