Android: windowBackground = "@ null", чтобы улучшить скорость приложения

Я только что прочитал blogpost от Ромена Гая о том, как ускорить пользовательский интерфейс приложения. Он в основном говорит, что если ваше приложение использует непрозрачные представления, вы можете установить фон @null в стиле своей Activity , используя:

 <item name="android:windowBackground">@null</item> 

Это работает? Я был готов проверить это, используя FPS, как он, но я не нашел четкого способа получить эту информацию.

Я прочитал несколько тем, говорящих, что вам нужно сделать это самостоятельно. Я собираюсь добавить настраиваемое представление, которое рисует FPS в onDraw() и вызывает invalidate() чтобы получить вызов все время.

Хотя это работает, я хотел бы знать, есть ли лучший способ анализа FPS в приложении.

Этот блогпост имеет исходный код образцов. Проверьте FpsImageView.java .

Если пользовательский интерфейс приложения полностью отображает содержимое окна, вы всегда должны устанавливать windowBackground равным null. Это предотвращает заполнение вашего фрейма цветом фона по умолчанию, так что это один минус прохода, который необходим для рендеринга каждого кадра, что означает, что вы можете потратить свое собственное время на рисование этого количества пикселей.

В некоторых случаях я заметил, что установка фона на нуль вызывает странные ui глюки, как написано здесь .

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