Javascript Android webview获取当前url并检查它是否包含字符串

Javascript Android webview获取当前url并检查它是否包含字符串,javascript,android,html,webview,Javascript,Android,Html,Webview,上一篇文章来自这里。事实上,我无法从这些答案中得到我想要的。也许我应该问得更清楚些。我实际上使用webview加载内容页。然后在内容页面中,有一些链接也是我自己创建的本地html。因此,流就像 android活动->网络视图->内容页->游戏页 实际上,我想在游戏页面中检索一个局部变量marks。因此,我创建了一个退出按钮,用于关闭页面并返回到android活动,以及将标记返回到android活动 所以我自己搜索了一些信息,发现window.close()不起作用。因此,我更改当前URL以指示单

上一篇文章来自这里。事实上,我无法从这些答案中得到我想要的。也许我应该问得更清楚些。我实际上使用webview加载内容页。然后在内容页面中,有一些链接也是我自己创建的本地html。因此,流就像

android活动->网络视图->内容页->游戏页

实际上,我想在游戏页面中检索一个局部变量
marks
。因此,我创建了一个
退出
按钮,用于关闭页面并返回到android活动,以及将
标记
返回到android活动

所以我自己搜索了一些信息,发现
window.close()
不起作用。因此,我更改当前URL以指示单击了退出按钮。然后从URL中提取
标记
,并将其存储在android活动中。但它不适用于我下面的代码,我想这可能是因为我在内容页中使用了该方法。我希望有人能帮忙,因为我真的找不到问题。我对代码进行了如下编辑:

我在android中的活动:

private WebView webview;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    //setContentView(R.layout.activity_main);

    webview = new WebView(this);
    webview.getSettings().setJavaScriptEnabled(true);

    try {            
        webview.loadUrl("file:///android_asset/index.html");
        webview.setWebViewClient(new WebViewClient()

        @Override 
        public boolean shouldOverrideUrlLoading(WebView view, String url)
        {
           if (url.contains("?marks=")){
             finish();}  // close activity
           else{
             view.loadUrl(url);}

           return true; 
        });
    }
    catch(Exception ex)
    {
        ex.printStackTrace();
    }
    setContentView(webview);
}
我的退出按钮是一个div:

<div class="exit" onclick="finish()">Exit</div>

好的,我想问题解决了,因为
webview.loadUrl
应该放在末尾。 setWebViewClient(新的WebViewClient()

function finish() {
  document.location.href= window.location.href +"?marks=" + marks;
}
    webview.setWebViewClient(new WebViewClient()

    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url)
    {
       if (url.contains("?marks=")){
         finish();}  // close activity
       else{
         view.loadUrl(url);}

       return true; 
    });

    webview.loadUrl("file:///android_asset/index.html");