Проблемы производительности при обработке изменения конфигурации ориентации и наличии нескольких ресурсов макета - PullRequest
0 голосов
/ 18 марта 2011

Приложение, над которым я работаю, предоставляет несколько ресурсов макета для различных конфигураций ориентации: layout-land;Макет-земля-MDPI;layout-land-hdpi и т. д.

Я заметил, что производительность снижается, когда платформе приходится выбирать из трех альтернатив - она ​​загружает макет в среднем за 494 мс (из 5 попыток).

С другой стороны, когда я определяю макет только в 'res / layout', я заметил, что производительность улучшается и загружается в среднем на 234,4 мс (опять же из 5 попыток).

В обоих случаяхво время некоторых тестов были случайные помехи GC в течение 100-120 мс.

Кто-нибудь еще наблюдал подобное поведение, когда у вас есть несколько альтернативных ресурсов макета для платформы на выбор?Спасибо.

1 Ответ

0 голосов
/ 21 марта 2011

После тщательного тестирования я пришел к выводу, что чем больше альтернативных ресурсов макета вы предоставляете для определенной конфигурации, тем больше времени требуется платформе для выбора правильного во время выполнения.

Во время моих тестов я видел, как G1 зависает, когда он пытается разрешить раскладку из трех альтернатив и загружается почти за 3 секунды. С другой стороны, когда вы предоставляете одну конфигурацию для конфигурации, она обрабатывает ее в течение 500 мс.

...