为什么cordova即使对于css转换也很慢?

为什么cordova即使对于css转换也很慢?,cordova,css-transitions,css-transforms,hybrid-mobile-app,mobile-chrome,Cordova,Css Transitions,Css Transforms,Hybrid Mobile App,Mobile Chrome,我一直在使用cordova构建一个要求很高的混合应用程序,并注意到它通常比我使用移动chrome运行网站时慢。我听到的一些论点对我来说毫无意义: 手机中的css动画速度很慢(如果这是真的,那么手机chrome中的网站运行速度也会很慢,但事实并非如此) cordova构建在chrome之上(css转换应该与cordova无关,chrome应该能够很好地渲染它们) cordova是否默认限制chrome可以使用的gpu数量?是否有一些设置我可以调整以提高css转换性能?Chrome仅在您希望他使用G

我一直在使用cordova构建一个要求很高的混合应用程序,并注意到它通常比我使用移动chrome运行网站时慢。我听到的一些论点对我来说毫无意义:

  • 手机中的css动画速度很慢(如果这是真的,那么手机chrome中的网站运行速度也会很慢,但事实并非如此)

  • cordova构建在chrome之上(css转换应该与cordova无关,chrome应该能够很好地渲染它们)


  • cordova是否默认限制chrome可以使用的gpu数量?是否有一些设置我可以调整以提高css转换性能?

    Chrome仅在您希望他使用GPU时才使用GPU

    例如:

    .nav-show {
        transform:translate(200px,200px);
        transition: transform 500ms linear;
    }
    
    将不会使用GPU进行渲染。相反,要强制GPU工作,您可以使用:

    .nav-show {
        transform: translate3d(200px,200px,0);
        transition: transform 500ms linear;
    }
    
    要了解更多信息,我找到了一个

    我不知道你还能做些什么

    我认为,WebView只是kit kat之后chrome的一部分。此外,当您在chrome上调试应用程序时,您的应用程序运行的环境与作为cordova应用程序“编译”的应用程序运行的环境不同。事实上,cordova在您的webview周围添加了一个包装器,插件添加了chrome不需要的功能,等等


    希望有帮助。

    webview比浏览器慢,但通常只有javascript。Cordova不是建立在chrome之上的,它是建立在系统webview之上的,只是android 4.4和更高版本是基于chrome的。@jcesarmobile我已经在kitkat上测试过了,所以Cordova一定是使用chrome本身。嗯,它不是真正的chrome,它是一个基于chrome的webview。并确保您已在androidManifest.xml上设置了base SDK 19或更高版本。如果我想对高度进行转换,该怎么办?不幸的是,您不能使用gpu转换宽度或高度。@BarbuBarbu您可以尝试使用
    transform:scale
    样式。