Общие образы системы (GSI)

Универсальный системный образ ( GSI ) — это чистая реализация Android с немодифицированным кодом Android Open Source Project (AOSP), которую можно запускать на различных устройствах Android.

Разработчики приложений могут устанавливать и запускать новейшие Android GSI для тестирования приложений на различных существующих устройствах Android и использовать GSI из разных стадий выпуска ОС Android, включая сборки Developer Preview и Beta. Добавление GSI в ваши процессы проверки и тестирования может дать вам некоторые дополнительные преимущества:

  • Более широкий охват тестирования на большем количестве реальных устройств
  • Больше времени на устранение проблем совместимости приложений
  • Больше возможностей исправить проблемы совместимости в Android, о которых сообщают разработчики приложений

Проект GSI имеет открытый исходный код и помогает улучшить экосистему Android, предоставляя больше возможностей для улучшения качества приложений и ОС перед каждым выпуском Android.

Поддержка GSI на всех устройствах
Рисунок 1 : GSI можно установить на широкий спектр устройств, а иногда даже на версии Android, для которых производитель устройства не предоставляет собственный образ системы.

GSI включают те же основные системные функции для всех устройств, на которых они установлены. Другими словами, GSI не включает настройки производителя устройства. Из-за этого вы можете столкнуться с поведенческими различиями в следующих ситуациях:

  • Взаимодействия, включающие пользовательский интерфейс
  • Рабочие процессы, требующие более новых аппаратных функций

Проверьте соответствие устройства

GSI могут функционировать только на устройствах со следующими характеристиками:

  • Загрузчик разблокирован.
  • Полностью соответствует высоким частотам.
  • Запущено с Android 9 (уровень API 28) или выше. Устройства, обновленные до Android 9 с более ранней версии, могут поддерживать или не поддерживать GSI.

Чтобы определить, может ли ваше устройство использовать GSI и какую версию GSI OS вам следует установить, выполните следующие действия:

  1. Проверьте поддержку Treble, выполнив следующую команду:

    adb shell getprop ro.treble.enabled

    Если ответ false , устройство несовместимо с GSI, и вам не следует продолжать. Если ответ true , перейдите к следующему шагу.

  2. Проверьте поддержку кросс-версий, выполнив следующую команду:

    adb shell cat /system/etc/ld.config.version_identifier.txt \
    | grep -A 20 "\[vendor\]"

    В выходных данных найдите в разделе [vendor] namespace.default.isolated .

    Если значение этого атрибута равно true , то устройство полностью поддерживает Vendor Native Development Kit (VNDK) и может использовать любую версию операционной системы (ОС) GSI, которая новее версии ОС на устройстве. По возможности используйте последнюю доступную версию ОС GSI.

    Если значение атрибута равно false , то устройство не полностью совместимо с VNDK и может использовать только GSI для той же версии ОС на устройстве. Например, устройство Android 10 (API версии 29), которое несовместимо с VNDK, может загрузить только образ Android 10 GSI.

  3. Тип архитектуры GSI CPU должен соответствовать архитектуре CPU устройства. Чтобы найти правильную архитектуру CPU для образа GSI, выполните следующую команду:

    adb shell getprop ro.product.cpu.abi

    Используйте вывод, чтобы определить, какой образ GSI использовать при прошивке вашего устройства. Например, на Pixel 5 вывод будет указывать, что архитектура ЦП — arm64-v8a , поэтому вам следует использовать тип arm64 GSI.

Загрузить GSI

Есть несколько способов получить GSI, в зависимости от ваших потребностей в разработке:

Установить GSI

Установка GSI зависит от устройства. Обратитесь к производителю вашего устройства за точными инструментами и процедурами. Для устройств Google Pixel, таких как Pixel 3 и более новые, существует несколько способов установки:

Дайте отзыв

GSI предназначены для того, чтобы помочь вам проверить ваши приложения на Android. Мы ценим ваши отзывы об изображениях, инструментах и ​​процессе использования GSI на ваших устройствах.

Чтобы уведомить нас об ошибках или запросах на новые функции, используйте специальный компонент отслеживания ошибок для GSI.

Дополнительные ресурсы