Почему кордова медленная даже для css-трансформаций?
Я создавал требовательное гибридное приложение с использованием Cordova и заметил, что в целом оно медленное по сравнению с тем, когда я запускаю веб-сайт в мобильном Chrome. Некоторые аргументы, которые я слышал, которые не имеют смысла для меня:
css-анимация на мобильных устройствах медленная (если бы это было так, веб-сайт работал бы медленно и в мобильном chrome, что не соответствует действительности)
Cordova построена на основе Chrome (CSS-преобразования не должны иметь ничего общего с Cordova, Chrome должен уметь отображать их очень хорошо)
Кордова по умолчанию ограничивает количество графического процессора, которое может использовать хром? Есть ли какие-то настройки, которые можно настроить для улучшения производительности CSS-перехода?
1 ответ
Chrome использует GPU, только если вы хотите, чтобы он использовал его.
Пример:
.nav-show {
transform:translate(200px,200px);
transition: transform 500ms linear;
}
не будет отображаться с графическим процессором. Вместо этого, чтобы заставить графический процессор работать, вы можете использовать:
.nav-show {
transform: translate3d(200px,200px,0);
transition: transform 500ms linear;
}
Для получения дополнительной информации я нашел классную статью об этом.
Я не знаю, есть ли что-нибудь еще, что вы можете с этим поделать.
Я думаю, что WebView - это лишь часть chrome после kit-kat. Более того, ваше приложение не работает в том же окружении, когда вы отлаживаете его в Chrome, чем "скомпилированное" как приложение Cordova. На самом деле, Cordova добавляет обертку вокруг вашего веб-просмотра, плагины добавляют функции, которые Chrome не должен делать, и т. Д...
Надеюсь, что поможет.