【问题标题】:What browser engine does Android use for phonegap?Android 为 phonegap 使用什么浏览器引擎?
【发布时间】:2015-07-28 21:16:13
【问题描述】:

我正在尝试在电话间隙项目中实现一些 CSS 动画。动画在 iOS 设备上运行良好,但在我的 Android 上却不行。事实上,像虚线边框这样的东西甚至都没有渲染。

在 phonegap 项目中我是否需要任何特殊的 Android 供应商前缀?

【问题讨论】:

    标签: css cordova


    【解决方案1】:

    PhoneGap 使用本地浏览器引擎。所以在android中,它使用WebKit。

    来自PhoneGap

    PhoneGap 使用的 web view 与 native 使用的 web view 相同 操作系统。在 iOS 上,这是 Objective-C UIWebView 类;上 Android,这是android.webkit.WebView。因为有区别 操作系统之间的网络视图渲染引擎,确保 你在你的用户界面中说明了这一点

    这个tutorial 可能对你有帮助。它展示了如何针对特定的浏览器(意味着特定的渲染引擎)。

    希望这会有所帮助!

    【讨论】:

    • 既然在 iOS 中工作的 -webkit 前缀在 Android 上工作,这难道不是吗?我不知道为什么会有这样的差异。
    • 虽然 iOS 和 Android 都使用 WebKit,但它们的呈现方式不同。以下是您可能会发现有用的差异列表quirksmode.org/webkit_mobile.html。但是这些网站上的人声称没有区别:37signals.com/svn/posts/…
    • 我将此标记为答案,因为它确实帮助我找到了正在发生的事情。原来这是我在我的 Android 手机上的自定义 ROM。我将我的项目加载到一个股票 Nexus 7 上,它工作得很好,包括 CSS 动画。
    【解决方案2】:

    小心,因为since version 4.4(仅限)Android 确实使用基于 Chromium 的 webview(我认为之前它只是一个基于 webkit 的 webview)。

    据我所知,4.4 之前的 WebView 名声不好。

    这是使用 Crosswalk project 的另一个原因,它有一个 Cordova 插件并允许嵌入特定版本的 Chromium,因此无论 SDK 是什么,您的所有应用都使用相同的 WebView 引擎(一个大 APK 的成本)

    【讨论】:

    • 很遗憾,Crosswalk 项目目前无人维护。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-20
    • 1970-01-01
    • 2021-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多