Сделайте свою игру совместимой со всеми форм-факторами

К планшетам, складным устройствам, автомобилям на базе Android Automotive OS, устройствам ChromeOS и ПК предъявляются следующие базовые требования к качеству:

Требование Планшеты и складные устройства Автомобильная ОС Android ChromeOS Google Play Игры на ПК
x86-64 Не требуется Необходимый Рекомендовано Необходимый
Поддержка изменения размера, различных размеров окон и соотношений сторон Рекомендуется поддержка изменения размера Требуется поддержка портретной и альбомной ориентации Рекомендуется поддержка изменения размера Поддержка любого или всех из следующих соотношений сторон: 16:9, 16:10, 3:2, 21:9 или портретное соотношение сторон 9:16
Сохранение состояния игры без перезапуска при изменении конфигурации (например, изменение размера, поворот, сворачивание или разворачивание) Необходимый
Рекомендуется поддержка для складных поз.
Необходимый Требуется: изменение размера, поворот, смена клавиатуры Н/Д
Удалить неподдерживаемые функции и разрешения Рекомендовано
В частности, для максимального охвата планшетных устройств не требуется:
  • android.hardware.camera.autofocus
  • android.hardware.camera.flash
  • android.hardware.location.gps
Необходимый Необходимый Необходимый
Элементы управления, визуальные эффекты и производительность игры не должны ухудшать играбельность (например, не должны быть размытыми или нечитаемыми, весь пользовательский интерфейс пригоден для использования) Необходимый Необходимый Необходимый Необходимый
Поддержка мыши и клавиатуры Рекомендовано Необязательный Требуется, если в игру нельзя играть с помощью односенсорного ввода. Требуется, если в игру нельзя играть с помощью односенсорного ввода.
Поддержка игрового контроллера Рекомендовано Рекомендовано Рекомендовано Рекомендовано
Графика высокого разрешения Рекомендовано Рекомендовано Рекомендовано Рекомендовано
Входной SDK Н/Д Н/Д Н/Д Требуется, если для игры нужна клавиатура.
ПГС v2 Не требуется Не требуется Не требуется Необходимый

Включить архитектуру x86-64 ABI

Добавьте версии, совместимые с x86-64 ABI, ко всем библиотекам, включенным в вашу игру, чтобы обеспечить наилучшую производительность и стабильность на таких форм-факторах, как автомобили на базе Android Automotive OS, устройства ChromeOS и игры Google Play на ПК .

Google работал с игровыми движками и сторонними поставщиками библиотек, чтобы обеспечить поддержку устройств. Вы должны иметь возможность реализовать версию x86_64 вашей игры с минимальными усилиями.

В Android App Bundles увеличенный файл x86-64 .so влияет только на размер загрузки в Play Console. Play Store предоставляет необходимый ABI каждому устройству, поэтому размер загрузки на целевых форм-факторах остается неизменным.

Аудит манифеста Android для обеспечения совместимости форм-фактора

Некоторые распространенные функции оборудования мобильных телефонов и планшетов, такие как камера или геолокация, недоступны в других форм-факторах. Игры, у которых есть требования к функциям, не могут быть загружены и установлены на устройствах форм-фактора, в которых отсутствуют эти функции.

Полный список доступных функций можно просмотреть с помощью следующей команды ADB:

adb shell pm list features

Чтобы сделать вашу игру совместимой с как можно большим количеством устройств, следуйте этим рекомендациям и запретам:

  • Отметьте функции как необязательные в вашем манифесте, добавив android:required="false" к объявлению <uses-feature> . Это применимо только к функциям, уже объявленным в вашем манифесте. Убедитесь, что ваш код не предполагает, что функция присутствует.
  • Помните о неявных требованиях к функциям, которые могут быть у вашей игры.
  • Не пытайтесь использовать отсутствующие функции во время выполнения.
  • Не запрашивайте неподдерживаемые разрешения Android во время выполнения.
  • Определяйте доступные функции во время выполнения и избегайте путей кода, специфичных для форм-фактора.

Дополнительную информацию о совместимости манифестов см. в следующих разделах:

Распространенной проблемой является то, что многие игры запрашивают android.hardware.wifi только для того, чтобы проверить, находится ли игрок в сети с ограничением трафика, но вместо этого можно было бы использовать API ConnectivityManager , не запрашивая никаких дополнительных разрешений (см. раздел Мониторинг состояния подключения и измерение трафика ).

Используйте Google Play Developer Console для содействия распространению

Форм-фактор фильтра

Поддержка консоли Play использует форм-фактор в качестве фильтра в следующих местах:

  • Android Vitals (кроме Android Automotive OS)
  • Охват и устройства
  • Статистика
  • Рейтинг и отзывы

Например, вы можете отфильтровать "Chromebook" в Android Vitals, чтобы узнать частоту сбоев и ANR на всех устройствах ChromeOS. Затем оптимизируйте свою игру с четкой целью.

Каталог устройств

Каталог устройств — полезный инструмент для поиска совместимых и неподдерживаемых устройств для вашей игры. Используйте фильтр форм-фактора, чтобы узнать, какие устройства не поддерживаются и почему. После перехода на страницу сведений об устройстве нажмите « Показать больше» , чтобы проверить точные причины, по которым ваши игры не поддерживаются на определенных устройствах, например:

  • Неподдерживаемый ABI
  • Неподдерживаемые функции и разрешения
  • Неподдерживаемые графические API

Устранение требований позволит игрокам на этих устройствах найти вашу игру в магазине Google Play.

Форм-фактор треков

Вы можете управлять настройками форм-фактора через Настройка > Дополнительные настройки > Форм-факторы в консоли Play. Мобильные устройства, планшеты, складные устройства и ChromeOS привязаны к вашим трекам по умолчанию. Всегда проще управлять релизом, если использовать единый артефакт релиза для обслуживания всех форм-факторов.

Вы можете создать выделенный релиз-трек для управления вашими играми Google Play на ПК (если вы участвуете в бета-программе), Android Automotive OS или релизами Android TV, если вам нужна отдельная сборка для управления функциями. При использовании отдельных треков для управления релизами форм-факторов у вас есть доступ к различным форм-факторам через производственные и тестовые треки.

Используйте Android App Bundles для управления различными функциями

Android App Bundle — это формат публикации, который включает в себя весь скомпилированный код и ресурсы вашего приложения и откладывает генерацию APK и подписание в Google Play.

Поддержка различных форм-факторов часто требует определенных ABI, активов, библиотек или путей кода для различных форм-факторов. Вы можете воспользоваться Play Feature Delivery , который позволяет добавлять модули функций в ваш проект. Модули содержат функции и ресурсы, которые включаются в ваше приложение только на основе указанных вами условий или доступны позже во время выполнения для загрузки с помощью библиотек Play Core .

Вы также можете использовать Play Asset Delivery — решение Google Play для доставки больших объемов игровых ресурсов с гибкими методами доставки и высокой производительностью.