Определения уровней совместимости
Чтобы убедиться, что ваше приложение обеспечивает отличное взаимодействие с пользователем на XR-гарнитурах и проводных XR-очках, ознакомьтесь со следующими контрольными списками и тестами совместимости.
Контрольные списки и тесты определяют исчерпывающий набор требований к качеству для большинства типов приложений Android.
Мобильное приложение, совместимое с Android XR.
Мобильное приложение, совместимое с Android XR, представляет собой существующее мобильное приложение, которое не было модифицировано для адаптации к большому экрану или любому другому форм-фактору. Этот тип приложения автоматически совместим с Android XR, если он не требует каких-либо неподдерживаемых функций , таких как телефония . Пользователи могут выполнять важные задачи, но с менее оптимальным пользовательским опытом, чем в приложении, разработанном специально для Android XR .
Приложение такого типа работает в полноэкранном режиме на панели в окружении пользователя, но его компоновка может быть неоптимальной при больших размерах экрана. Приложения, указывающие компактные размеры в манифесте, отображаются соответствующим образом. Приложение не работает в режиме совместимости и, следовательно, не имеет черных полос по краям. Приложение обеспечивает функциональное взаимодействие с основными способами ввода, предоставляемыми Android XR (отслеживание взгляда + жесты или трассировка лучей) и базовую поддержку внешних устройств ввода, включая клавиатуру, мышь, трекпад и игровые контроллеры. Возможно, оно не поддерживает изменение размера экрана.
Совместимые с Android XR мобильные приложения автоматически включаются в список поддерживаемых и доступны в Google Play Store. Приложение, несовместимое из-за неподдерживаемых функциональных требований, не может быть установлено через Play Store.
Приложение для больших экранов, совместимое с Android XR
Приложение для больших экранов, совместимое с Android XR, относится к категории Tier 1 или Tier 2 и имеет оптимизированный макет для всех размеров экрана и конфигураций устройств (например, для больших экранов в дополнение к мобильным устройствам), а также расширенную поддержку внешних устройств ввода и многозадачности. Приложения для больших экранов, совместимые с Android XR, автоматически включаются в эту функцию и доступны в Play Store.
Приложение для Android XR, совместимое с большим экраном, работает в полноэкранном режиме на пространственной панели в окружении пользователя с разрешением 1024 × 720 пикселей. Пользователи смогут взаимодействовать с приложением естественным образом, используя глаза и руки, но в остальном оно будет очень похоже на приложение для большого экрана.
Отличительное приложение для Android XR
Приложение, разработанное специально для Android XR, имеет пользовательский интерфейс, специально адаптированный для XR, и реализует функции, доступные только в XR. Вы можете в полной мере использовать возможности Android XR и выделить свое приложение, добавив функции XR (например, пространственные панели) или контент XR (например, 3D-видео) в свои приложения, используя Android Jetpack XR SDK, Unity или OpenXR.
С помощью Jetpack XR SDK можно реализовать специфические для XR возможности, включая пространственные панели, окружения, 3D-модели, пространственный звук, 3D/пространственное видео/фотографии, якоря и другие пространственные элементы интерфейса, такие как орбитеры.
Чтобы считаться приложением, дифференцированным для Android XR, оно должно реализовывать как минимум одну функцию или элемент контента, специфичный для XR. Для некоторых сценариев использования могут существовать дополнительные требования к функциям и контенту. Подробности см. ниже.
Все приложения, созданные с помощью Unity или OpenXR, считаются дифференцированными. Приложения, созданные с помощью Unity или OpenXR, должны соответствовать показателям качества и минимальным требованиям, чтобы считаться дифференцированными приложениями для Android XR. Например, приложение с низкой частотой кадров, сбоями или другими негативными пользовательскими ситуациями не будет соответствовать критериям.
Контрольный список совместимости с Android XR
Эти контрольные списки совместимости определяют критерии, которые помогут вам оценить уровень поддержки XR вашим приложением. Уровни поддержки включают следующее:
Мобильное приложение, совместимое с Android XR.
Ваше приложение должно соответствовать основным требованиям к качеству приложений .
Ваше приложение также должно соответствовать всем применимым рекомендациям по доступности для других форм-факторов, таких как телефоны и планшеты (например, цветовой контраст ).
Приложение для больших экранов, совместимое с Android XR
Любое приложение уровня Tier 1 или Tier 2 , предназначенное для больших экранов, считается совместимым с Android XR. Рекомендации по качеству приложений для больших экранов предлагают структурированный подход к обеспечению отличного пользовательского опыта на Android XR, однако учет состояния устройства, такого как поворот или складывание/раскладывание, не является обязательным.
Приложение для Android XR, отличающееся от других.
Поскольку приложения, соответствующие стандарту Android XR, сильно различаются, некоторые из перечисленных возможностей применимы только к определенным типам приложений. Выберите возможности, подходящие для вашего приложения. Приложения Android также должны соответствовать рекомендациям для приложений Android с большими экранами и мобильных устройств . Ознакомьтесь с требованиями, подходящими для вашего приложения (некоторые из них могут также стать предметом потенциальных обновлений политики).
Тип приложения / Вариант использования | Категория | Область | Руководство |
|---|---|---|---|
Общие базовые требования (Android и OpenXR) | Конфиденциальность и безопасность | Вход в учетную запись (пользовательский интерфейс для первого использования) | Если ваше приложение использует систему авторизации, четко отображайте учетные данные пользователя (например, его имя пользователя) после успешной аутентификации. Это повышает доверие, подтверждая активность учетной записи. Кроме того, добавьте легкодоступное меню или страницу настроек, позволяющую пользователям просматривать и управлять информацией своей учетной записи в любое время. |
Безопасность и комфорт | Стробирование | Для обеспечения безопасности и благополучия всех пользователей крайне важно свести к минимуму риск возникновения стробоскопических эффектов в вашем приложении. Избегайте преднамеренного включения любых элементов дизайна, которые могут вызывать мерцание. 1. Если стробоскопический эффект абсолютно необходим, убедитесь, что частота вспышек очень низкая (менее 3 вспышек в секунду), а область вспышки небольшая и ненавязчивая. 2. Рассмотрите возможность предоставления возможности отключения этой функции через настройки или параметры. 3. Перед началом мигания отображать четкое предупреждающее сообщение. | |
Как избежать укачивания | Следуйте этим рекомендациям, чтобы избежать укачивания у пользователей:
| ||
Вход | Размер целевых объектов взаимодействия | Для взаимодействия с объектами заданы минимальный и рекомендуемый размеры, исходя из предполагаемого расстояния взаимодействия:
При использовании Jetpack XR SDK мы рекомендуем минимальный размер мишени 48 x 48 dp, а рекомендуемый размер мишени для касания — 56 x 56 dp или больше. | |
Техническая функциональность XR | Ввод вручную | Ваше приложение поддерживает естественный ввод с рук в качестве базового метода взаимодействия для Android XR, включая требования к трассировке лучей от руки и поддержку жестов для примитивов ввода. Ваше приложение можно использовать и без контроллеров, но при желании его можно расширить с их помощью. | |
Boundary (ранее Guardian) | Если ваше приложение предполагает, что пользователи будут перемещаться из своей начальной точки (при запуске приложения) в пределах своего физического пространства, оно либо запрашивает сквозную передачу данных, либо объявляет в манифесте значение Если ваше приложение использует | ||
Производительность | Визуализация | Ваше приложение отображает каждый кадр в интервале времени от <11,1 мс (90 Гц) до <13,8 мс (72 Гц). | |
Разрешение | Разрешение вашего приложения составляет не менее 1856 x 2160 пикселей на каждый глаз. | ||
время запуска приложения | Пользователи хотят иметь возможность взаимодействовать с вашим приложением или игрой как можно быстрее. Определение хорошего времени запуска или загрузки варьируется в зависимости от категории, но в качестве общего принципа мы рекомендуем минимизировать время между запуском и первым взаимодействием. Целевые сроки указаны ниже:
Для получения более подробной информации см. раздел «Время запуска приложения» . | ||
АНР | Ваше приложение не приводит к сбоям и не блокирует поток пользовательского интерфейса, вызывая ошибки ANR («Android не отвечает»). В вашем приложении показатель ANR составляет менее 1 в 99,5% ежедневных сессий. Ваше приложение использует отчет Google Play перед запуском для выявления потенциальных проблем со стабильностью. После развертывания обратите внимание на страницу Android Vitals в консоли Google Play. | ||
Коэффициент аварийности | Не следует чрезмерно расходовать системные ресурсы, влияя на работу остальной системы и других приложений, поддерживая уровень сбоев на уровне около 1%. | ||
Базовая модель Android-приложения (с дифференциацией XR) | Визуальный и пользовательский опыт | Базовый XR | Ваше приложение реализует как минимум одну функцию или элемент контента, специфичный для XR, для улучшения пользовательского опыта. Это может включать в себя орбитальный аппарат, одну или несколько пространственных панелей, окружения или 3D-объекты. |
Пространственные панели | При многозадачности (то есть выполнении двух или более задач одновременно) с использованием панелей создавайте отдельные пространственные панели. Например, вы можете создать отдельные пространственные панели для окон чата и списков. | ||
Окружающая среда | При отображении виртуальной среды яркость может отвлекать и вызывать усталость. Ваше приложение отображает безопасный тональный диапазон без резких скачков яркости, которые конфликтуют с пользовательским интерфейсом или могут вызывать усталость пользователя. Пользовательский интерфейс должен быть читаемым во всех направлениях, особенно в средней горизонтальной полосе, куда направлен взгляд пользователя. (Подробные рекомендации будут добавлены позже) | ||
Переход между домашним пространством (HSM) и полным пространством (FSM) | При переходе пользователей в режим «Полное пространство» ваше приложение должно предоставлять точку входа, позволяющую быстро переключаться между «Главным пространством» и «Полным пространством». Используйте значок или надпись и разместите кнопку в легкодоступном месте. | ||
Пространственные панели | Размещайте меню, ресурсы и элементы управления в отдельной панели или окне редактирования. Не включайте эти компоненты в основную панель редактирования. | ||
Меню / Прокрутка списка | В вашем приложении для взаимодействия с прокруткой (особенно в каруселях или вертикальных списках) добавлена физика или инерция. Например, прокрутка включает в себя инерцию, благодаря чему контент в каруселях и списках продолжает движение в течение короткого времени после взаимодействия пользователя, а затем постепенно останавливается (вместо того, чтобы останавливаться точно в момент прекращения ввода пользователя). | ||
Видео/медийные функции | Визуальный и пользовательский опыт | Пространственный плеер (только для Android) | Ваше приложение позволяет пользователям смотреть контент в режиме Full Space. Удалите элементы управления воспроизведением из наложения поверх контента и разместите их на отдельной панели или в окне просмотра. Для панелей с функцией воспроизведения видео установите соотношение сторон таким образом, чтобы убрать черные полосы по краям экрана. |
Пространственное аудио | Рассмотрите возможность поддержки пространственного звука, включая звук, синхронизированный с панелью управления, или объемный звук. | ||
Одновременный просмотр видео | Если ваше приложение поддерживает одновременную трансляцию нескольких видеопотоков, пользовательский интерфейс отображает следующую информацию:
| ||
Среда | При воспроизведении контента в Full Space ваше приложение позволяет пользователям либо приглушить эффект сквозной передачи изображения, либо выбрать виртуальные среды. |
OpenXR™ и логотип OpenXR являются товарными знаками, принадлежащими компании The Khronos Group Inc. и зарегистрированными в качестве товарных знаков в Китае, Европейском Союзе, Японии и Соединенном Королевстве.