我将解释我的情况,我找到的可能解决方案,然后是几个问题。
我构建了一个 Cordova 跨平台应用程序,使用 Monaca Cloud IDE 和 Onsen 作为前端。我在我的应用程序中使用了一个滑块,实现如下:
<input type = "range" .../>
这在 iOS 和某些版本的 Android 上运行良好,但我在较旧的 Android 版本上遇到了问题。我发现的问题包括带有 touchStart、touchEnd 和 touchHover 事件的 javaScript 没有触发,拇指滑块消失,或者滑块什么也不做,就像它被冻结一样。我做了一些阅读,据我所知,旧版本的 Android 浏览器上的 javaScript 和 CSS 存在问题。
可能的解决方案:
我查看了两种可能的解决方案(没有尝试实现其中任何一种),其中一种是 CrossWalk 网络视图插件,另一种是 In-App-Browser 插件。我不知道 In-App-Browser 会使用什么浏览器,但如果它不是系统浏览器,它应该是一个可能的解决方案,无论如何,在我看来。我对 Crosswalk 的最大问题是,它会让我的应用程序比没有它时大得多,比如至少 4-5 倍以上。给你一个想法,我的应用程序只有大约 4MB。
只是一般说明,我更喜欢库而不是插件,只是因为它们更容易实现,至少对我来说。
问题:
首先,有没有比我找到的问题更好的解决方案?
当用户从各自的应用商店安装应用程序时,有没有办法有条件地安装插件/库?我问是因为如果我正在考虑仅使用 Crosswalk(如果它实际上是我最终实施的解决方案)的可能性,则该应用程序安装在运行 4.4 之前的 Android 版本的 Android 设备上。
In-App-Browser 使用哪种网络浏览器?系统默认的?
如果我没有在我的应用程序的源代码中包含库或插件并使用 cdn 来托管它,它是缓存到我的应用程序还是每次应用程序启动时都必须获取它。
非常感谢任何建议、建议和/或解决方案。
谢谢你。