【问题标题】:Cordova android scrolling/performance issuesCordova android 滚动/性能问题
【发布时间】:2023-03-26 00:46:01
【问题描述】:

我使用以下 CSS 为我的 Cordova 应用程序创建平滑滚动

.scrollable { 
    overflow: auto;
    -webkit-transition-property: top, bottom;
    transition-property: top, bottom;
    -webkit-transition-duration: .2s, .2s;
    transition-duration: .2s, .2s;
    -webkit-transition-timing-function: linear, linear;
    transition-timing-function: linear, linear;
    -webkit-overflow-scrolling: touch;
    -webkit-transform: translateZ(0);
    -webkit-backface-visibility: hidden;
}

这在 iOS 上运行得非常好,但由于某些原因,在 Android 上运行得不是很好。 Android 的整体性能也不接近 iOS,但在滚动时最为明显。有什么建议?我打开了android:hardwareAccelerated="true",但这似乎没有太大区别。

【问题讨论】:

    标签: android css cordova


    【解决方案1】:

    Android 浏览器滚动总是很痛苦,性能比 iOS 差很多。这就是hybrid app frameworks like Ionic has introduced native scrolling to android 的原因,它使性能更好。 Ionic 真的很棒,但如果你不想使用它,你可以做一些谷歌搜索以了解有关 android 原生滚动的更多信息,或 read its source code 了解他们如何实现它并将其移植到你的项目中。

    解决此问题的另一种方法是将Crosswalk 嵌入到您的android 应用程序中,这是一个基于Chromium 的webview。缺点是你的 APK 大小会增加 20MB,但在不同版本的 Android OS 上的性能和一致性确实会提高很多。

    【讨论】:

    • 感谢您的反馈!我确实将 Crosswalk 嵌入到应用程序中以提高性能。它还增加了对 Android 4.4 的支持。它确实增加了很多尺寸,但它为 Android 提供了一个相对公平的竞争环境,这很好。我还在做一些其他性能方面的事情(比如摆脱 box-shadow)来提高性能,而且差别很大!
    • 很高兴听到这个消息! :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-06
    • 1970-01-01
    • 2014-01-23
    • 2015-04-05
    • 2018-07-04
    • 1970-01-01
    • 2017-12-27
    相关资源
    最近更新 更多