Unity 6.3
0 онлайн 42 гостей 3 в системе
Вход

Android требования и совместимость

Прежде чем начать разрабатывать приложение Android на Unity, проверьте требования Unity и информацию о совместимости для Android, чтобы убедиться, что вы знаете о любых ограничениях для разработки приложения Unity для этой платформы.

Поддержка Android

Unity поддерживает Android 7.1 “Nougat” (API уровень 25) и выше. Для получения дополнительной информации, см. AndroidSdkVersions.

Теперь вы можете выбрать Android API уровни 35 и 36 в своих Unity проектах.

Поддержка графики API

Устройства Android поддерживают Vulkan и OpenGL ES. В этом разделе содержится информация о графиках APIs Unity, поддерживающих Android.

Графика API Поддержка
Vulkan Да
OpenGL ES 1.0 Нет
OpenGL ES 1.1 Нет
OpenGL ES 2.0 Нет
OpenGL ES 3.0 Да
OpenGL ES 3.1 Да
OpenGL ES 3.2 Да

Совместимость конвейера отображения

Не все конвейер отображения совместим с Android из-за оборудования и графики API ограничения.

Особенности Built-in Render Pipeline Universal Render Pipeline High Definition Render Pipeline Изготовленный на заказ Scriptable Render Pipeline
Android Да Да Нет Да

Атрибуты элемента манифеста

В этом разделе содержатся сведения о совместимости атрибутов элемента манифеста приложения Android.

  • Для элемента <Activity>, Unity поддерживает только singleTask launchMode.

Совместимость эмуляторов

Unity не поддерживает эмуляторы Android. Для тестирования приложения вы можете:

Сжатие текстуры

Стандартные форматы сжатия текстур на Android — это Сжатие текстур Ericsson (ETC) и Adaptable Scalable Texture Compression (ASTC). Чтобы ориентироваться на самый широкий спектр устройств Android, используйте один из этих форматов сжатия текстуры. Формат сжатия текстуры по умолчанию Unity — ASTC. Если устройство Android не поддерживает формат сжатия текстуры, который вы используете для текстуры, Unity декомпрессирует текстуру во время выполнения. Это увеличивает использование памяти и снижает скорость отображения.

Подмножество устройств Android поддерживает формат сжатия текстур DXT. Этот формат поддерживает текстуры с альфа-каналом, а также высокие коэффициенты сжатия или высокое качество изображения. Для служб цифрового распространения, которые фильтруют контент на основе формата сжатия текстур, рекомендуется создавать отдельные сборки приложения для каждого формата сжатия текстур.

Существует два способа изменить формат сжатия текстуры по умолчанию для приложения:

Значение, установленное в настройках сборки, имеет приоритет над значением, установленным в настройках проигрывателя. Используйте его для изменения формата сжатия текстуры для конкретной сборки.

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

Воспроизведение видеофайлов

Этот раздел содержит дополнительную информацию о проигрывании видеофайлов на Android:

  • Для воспроизведения видеофайлов на Android используйте компонент Видеоплеер. Если ваше приложение пытается воспроизвести видеофайл, который устройство не поддерживает, Unity не воспроизводит видео.

  • Вы можете использовать любое разрешение или количество аудиоканалов, если их поддерживает целевое устройство. Примечание: Не все устройства поддерживают разрешение больше 640 × 360.

  • Unity поддерживает воспроизведение из несжатых пакетов ресурсов. Для Android Pie и выше, Unity поддерживает воспроизведение из сжатых пакетов ресурсов.

  • Unity не поддерживает нативный webM/VP8 прозрачность. Играть VP8-кодированный webM клипы с прозрачностью, транскодировать клипы в поддерживаемый формат.

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

  • Unity сообщает о проблемах совместимости форматов в выводе adb logcat и префиксирует их AndroidVideoMedia. Этот файл может отображать другие сообщения об ошибках для конкретного устройства рядом с сообщениями о проблемах формата видео Unity. Эти ошибки для конкретного устройства не видны Unity и часто объясняют, что проблема совместимости.

16 KB поддержка размера страницы памяти

Unity поддерживает устройства с 16 KB размерами страниц памяти, функция, введенная в Android 15. Для получения дополнительной информации об этой функции, см. Android документацию по Поддержка размера страниц 16 КБ.

Приложения Unity, созданные для устройств с 4 KB размером страницы памяти, могут не работать на устройствах с 16 KB размером страницы памяти. Чтобы обеспечить совместимость приложения с устройствами, использующими 16 KB размер страницы памяти, обратите внимание на следующие ключевые моменты:

  • Обновите Unity Editor до последней версии патча. Обновите нативные плагины, перекомпилируйте и повторно отправьте приложение в Google Play. Тот же исполняемый файл приложения будет поддерживать устройства с 4 KB и 16 KB размерами страниц памяти. Дополнительные сведения см. в документации Android по Создание приложения с поддержкой 16 KB устройств.
  • Если ваш проект включает пакеты, содержащие собственные библиотеки, такие как Burst, обновите их до самых последних версий патчей, совместимых с текущей версией редактора.
  • Если ваш проект содержит плагин с файлом .so, который выстраивается на 4 KB вместо 16 KB, Unity Editor отображает предупреждение во время процесса сборки.
  • Если в вашем приложении используются сторонние плагины или SDKs, которые связаны с базовыми библиотеками, свяжитесь с создателями плагинов, чтобы убедиться, что их базовые библиотеки совместимы с 16 KB размерами страниц. Обновите соответствующий SDKs и повторно отправьте свое приложение.
  • Руководство по тестированию приложения на устройствах с 16 KB размерами страниц памяти см. в документации Android по Включение режима 16 KB на устройстве с помощью параметров разработчика.