Убедитесь, что интерфейс приложения быстро реагирует на действия пользователя и, если необходимо, компенсирует медленный запуск. Убедитесь, что ваше приложение легко локализовать. Для этого учитывайте различия между языками: интервалы, плотность, порядок слов, акценты и формулировки. Также убедитесь, что дата, время и другие единицы измерения интернационализированы и отображаются в соответствии с настройками телефона.
Быстрый и отзывчивый пользовательский интерфейс.
Восприятие пользователем производительности приложения во многом зависит от его отзывчивости. Например, взаимодействие с пользователем и четкое отображение – две важные характеристики производительного приложения. Здесь вы найдете советы по оптимизации этих и других аспектов скорости и отзывчивости приложения.
Вибрация при касании всех объектов, с которыми можно взаимодействовать.
- Тактильная обратная связь добавляет ощущение прикосновения к пользовательскому интерфейсу. Чтобы уменьшить воспринимаемую задержку приложения, убедитесь, что оно обеспечивает обратную связь при касании всех элементов, с которыми можно взаимодействовать.
- Интерактивный отклик побуждает пользователя глубже изучать приложение, создавая своевременные, логичные и приятные реакции экрана на действия пользователя. Отзывчивое взаимодействие превращает приложение из сервиса по доставке информации в опыт, который передается с помощью множества визуальных и тактильных ответов.
- Дополнительную информацию можно найти в руководстве по Android в разделе Настройка тактильной обратной связи.
Интерфейс всегда должен быть интерактивным
- Если приложение не отвечает во время выполнения фоновых действий, оно кажется медленным и неудобным. Убедитесь, что интерфейс приложения всегда реагирует на действия пользователя, независимо от фоновых процессов. Для этого выполняйте сетевые и другие ресурсоемкие операции в фоновом потоке, чтобы поток UI был максимально свободен.
- Приложения, созданные на основе Material Design, используют минимальные визуальные изменения при загрузке контента, представляя каждую операцию с помощью одного индикатора активности. Не используйте блокирующие диалоговые окна с индикаторами загрузки.
- Пустые состояния возникают, когда в представлении нет контента для показа. Например, это может быть пустой список или поиск, который не дал результатов. Избегайте пустых состояний, используя начальный, образовательный или наиболее подходящий контент. Если эти варианты не подходят, покажите неинтерактивное изображение и текстовый слоган, которые сообщат пользователю, что он увидит, когда появится что-то для показа.
- Дополнительную информацию вы можете найти в учебном материале о том, как обеспечить высокую скорость работы приложения.
Ориентируйтесь на 60 кадров в секунду на недорогих устройствах
- Убедитесь, что ваше приложение работает быстро и без сбоев даже на недорогих устройствах.
- Перерисовка может значительно замедлить работу приложения. Она происходит, когда пиксели отрисовываются более одного раза за проход. Например, если у вас есть изображение с кнопкой поверх него, Некоторого перерисовывания избежать не удастся, но его нужно свести к минимуму, чтобы обеспечить плавную частоту кадров. Чтобы убедиться, что перерисовка сведена к минимуму, выполните отладку перерисовки графического процессора.
- Устройства Android обновляют экран с частотой 60 кадров в секунду (fps), что означает, что ваше приложение должно обновлять экран примерно за 16 миллисекунд. Проанализируйте приложение с помощью инструментов на устройстве, чтобы узнать, когда и почему оно не укладывается в 16 мс.
- Уменьшите количество анимаций или удалите их на недорогих устройствах, чтобы снизить нагрузку на ЦП и графический процессор. Подробнее о том, как повысить производительность макета…
- Эффективная иерархия View может ускорить работу приложения без увеличения объема потребляемой памяти. Подробнее о производительности и иерархиях View…
Используйте заставку для приложений, которые запускаются медленно
- Экран запуска – это первое, что видит пользователь, когда открывает приложение. Если при запуске приложения пользователь видит пустой экран, ему кажется, что загрузка идет дольше. Чтобы избежать этого, используйте плейсхолдеры или фирменный экран запуска.
- Интерфейс с плейсхолдером обеспечивает наиболее плавный переход и подходит как для запуска приложения, так и для перехода между действиями в нем.
- Фирменные заставки позволяют на мгновение показать бренд, не отвлекая пользователя от контента.
- Лучший способ справиться с медленным запуском – не допускать его. Производительность при запуске – информация, которая поможет вам ускорить запуск приложения.
Рекомендации по работе с пользовательским интерфейсом
- Material Design – это визуальный язык, который сочетает классические принципы качественного дизайна с инновационными технологиями и научным подходом. Material Design – это единая система, позволяющая создавать объявления, которые одинаково хорошо выглядят на устройствах разного размера и различных платформах. Используйте ключевые компоненты Material Design, чтобы пользователи интуитивно понимали, как работать с вашим приложением.
- Готовые к использованию компоненты Material Design доступны в библиотеке поддержки Material Design. Эти компоненты поддерживаются в Android 2.1 (уровень API 7) и более поздних версиях.
Локализация
- Ваши пользователи могут жить в любой точке мира, и их родной язык может отличаться от вашего. Если вы не представите свое приложение на языке, который понимают ваши пользователи, вы упустите возможность. Поэтому мы рекомендуем локализовать приложение для основных языков региона.
- Дополнительную информацию вы найдете в руководстве по поддержке разных языков и контрольном списке по локализации.
- Начиная с Android 7.0 (уровень API 24), фреймворк Android предоставляет подмножество ICU4J API, которое помогает локализовать приложение на несколько языков. Подробную информацию вы найдете в статье об API ICU4J Android Framework.
Дополнительные ресурсы
Дополнительную информацию по этой теме можно найти в следующих ресурсах: