gpt4 book ai didi

android - Cordova/Phonegap 在新平板电脑上使用 Open Layers 时性能低下,但在新手机上性能良好

转载 作者:行者123 更新时间:2023-11-29 17:43:15 24 4
gpt4 key购买 nike

我开发了一个应用程序,它在 Android 上使用 Cordova/Phonegap 来显示 Open Layers 3 map 。

它与这个项目非常相似:

https://github.com/netgis/ol3

我发现该应用程序在运行 Kitkat V4.4.4 的 Samsung Note 4 上运行流畅,在运行 Jellybean 的旧 S2 上运行良好(事实上几乎同样好),但它运行非常糟糕在运行 KitKat V4.4.2 的全新 Galaxy Tab Pro 12.2 上慢慢运行。

我想知道是否有 Cordova/Phonegap 专家可能知道原因。

我能看到的唯一区别是android的版本! V4.4.4 和 V4.4.2。

我发现 SO 上的线程通常说 WebView 可能是一个问题并导致性能下降,但我在我的 Note 4 上获得了很好的性能,并且 S2 比使用 Jellybean 的平板电脑运行得更好。

我不确定代码在此处显示是否有用,基本上我有一个 Cordova Android 应用程序,其中包含一个嵌入了 Open Layers 3 map 的 HTML 文档,仅此而已。

最佳答案

问题出在 WebView,它使用默认的 Android 浏览器。出于某种原因,如果您尝试使用 GPU 加速(默认启用)但此浏览器本身不提供 GPU 加速(这确实很奇怪但确实如此),则会限制 CPU 支持。

显然 KitKat 在 Android V4.4.3 之前有这个问题。因此,如果您运行的是 V4.4.4,您将不会遇到此性能问题,因为它已得到修复(因为它使用 Chromium 而不是默认浏览器)。

这是我发现的证实这一点的众多引用资料之一:

https://code.google.com/p/chromium/issues/detail?id=315111

一些设备还没有更新到这个级别,这里是我完全最新的设备:

平板使用Android V4.4.2

S2使用Android V4.0.2

Note 4 使用Android V4.4.4

S2 使用 Jelly Bean,因此没问题,Note 4 使用更新后的 KitKat 也运行良好,但平板电脑与应用程序斗争到无法使用的程度,因为它低于 V4.4.3。

对我来说,SO 上的大多数建议解决方案都是禁用硬件加速,但这些建议并不合适,因为我的应用程序确实需要硬件加速才能有效地渲染 map 。

解决方案是通过使用 Crosswalk 强制使用 Chromium,而不管操作系统版本如何,从而完全解决这个问题。

我发现有很多资源可以将 Cordova 与人行横道协同使用:

https://crosswalk-project.org/documentation/cordova.html

https://blog.nraboy.com/2014/10/use-crosswalk-ionic-framework-android-apps/

关于android - Cordova/Phonegap 在新平板电脑上使用 Open Layers 时性能低下,但在新手机上性能良好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27846198/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com