在XWalkView / XWalkResourceClient中未调用shouldOverrideUrlLoading

时间:2016-01-09 22:09:55

标签: android crosswalk

我试图跟踪我的用户在浏览器中点击的链接并且惨遭失败:

我的代码:

browser = new XWalkView(getMainActivity());
browser.setResourceClient(new XWalkResourceClient(browser)
{
  @Override
  public boolean shouldOverrideUrlLoading(XWalkView view, String url)
  {
    log.i("juhu 1", url);
    return false;
  }
});

这仅调用我提供的URL(browser.load())的回调,但不会调用用户随后点击呈现页面的URL。更糟糕的是,它并不一致:有时回调会被调用,有时不会被调用。

这是一个失败的例子:

<html>
  <body>
    <p><a href="#mylink">my link 1</a></p>
    <p><a href="mylink">my link 2</a></p>
  </body>
</html>

我尝试使用XWalk 15.44.384.13(最新)和14.43.343.24(几次修订),但都没有成功。

我遍布这个地方寻找类似的方法,但资源客户端和ui客户端似乎都没有提供可行的方法。

1 个答案:

答案 0 :(得分:1)

至少在XWalk 16.45.421.19中看起来是固定的,调用按预期进行。