
#разработка #статьи
Каким-бы функциональным и красивым не было приложение, мало кто из разработчиков хотел бы получить отзывы о том, что приложение работает медленно на устройстве пользователя.
Порой не просто сделать своё приложение «летающим» на всех устройствах, так как даже интерфейс системы работает с лагами на некоторых девайсах.
Но всё равно нужно держать в голове следующий момент: большинство устройсв сегодня имеют частоту обновления экрана в 60 fps, то есть на отрисовку одного кадра у нас есть 1/60 ≈ 16 миллисекунд. Для того, чтобы добиться этого результата у нас есть несколько инструментов и советов.
1) Используйте средства для диагностики проблем с layouts: Layout Inspector, Systrace, Android Profiler. Каждая из них достойна отдельного поста, поэтому пока только ссылки в документации.
2) Переиспользование layouts с merge.
Вынесение layout в xml и использование его при помощи include — довольно распространённая практика. Однако, многие забывают, что вместо корневого layout можно написать merge, который уберёт лишний уровень вложенности.
3) Используйте подходящий родительский layout.
Для этого пользуйтесь следующим правилом: для сложной верстки — ConstraintLayout, для вертикальных или горизонтальных последовательных элементов — LinearLayout, для расположения элементов одного над другим — FrameLayout.
4) Используйте ViewStub.
ViewStub — это хорошая альтернатива, когда вам нужно показать тяжёлый layout на экране или сделать этот показ отложенным. Он быстро рендерится и легко применяется, поэтому не забывайте про этот инструмент.
Подробнее про эти советы можно почитать тут.