【问题标题】:Window confirm() behavior in Chromium vs WebViewChromium 与 WebView 中的窗口确认()行为
【发布时间】:2017-02-10 20:31:22
【问题描述】:

我正在尝试在 Android Webview 中测试窗口 confirm() method。我正在运行 Android 7 构建(自定义构建)。此构建中的 WebView 不是 Chrome,但似乎基于 chromium(我没有更改构建中的任何 webview 代码)。设置中的开发者选项表明构建使用Android WebView。 (注意:下面的测试也可以在使用 Android Studio 的 Nexus 5X API 24 模拟器上完成)

我测试了 confirm() 方法,我发现 webview 中的行为 (UI) 与 Chromium 浏览器相比有所不同。对此page 进行了快速测试。

当我在chromium browser(使用GitHub或F-Droid上的getChromium应用程序下载)中测试它时,我观察到以下行为(该行为与Chrome浏览器一致):

我之前问过一个相关的question,似乎他们正在使用Android的AlertDialog来显示这个UI。

然后我在webview browser tester 应用程序中测试了同一页面,我看到了以下行为:

我想问一下WebView的实现是不是基于Chromium,那么:

  1. 为什么这两种情况下对话框的 UI 不同?
  2. 第二种情况是否也利用了 Android 的 AlertDialog 下面(例如,在对话框中使用自定义布局)?

【问题讨论】:

  • 那么webview browser tester app 是什么?您在哪个设备/模拟器/操作系统版本上进行测试。你知道 webview 源随着 Android 5.0 Lollipop 的变化:developer.chrome.com/multidevice/webview/overview
  • webview 浏览器测试器应用程序预装在通过 Android Studio 运行的 Nexus 图像中。我知道这些变化。

标签: javascript android webview chromium


【解决方案1】:

我尝试了第二个测试,其中我创建了一个内部带有 WebView 的应用程序,并使用 confirm() 方法加载了页面。这次 UI 看起来类似于 Chrome / Chromium 浏览器。这说明基于 Chromium 的 WebView 的结果是一致的。

我认为问题在于我使用了预装在 Android Studio Nexus 5X 映像中的 webview browser test 应用程序。我认为该应用可能在使用 WebView 时进行了一些自定义。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-01
    • 2011-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多