Общие образы системы (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 могут работать только на устройствах со следующими характеристиками:

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

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

  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 должен соответствовать архитектуре ЦП устройства. Чтобы найти подходящую архитектуру ЦП для образа GSI, выполните следующую команду:

    adb shell getprop ro.product.cpu.abi

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

Загрузите GSI

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

Установить GSI

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

Дать обратную связь

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

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

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