Android 加载一个 url 到以双斜杠“//”开头的 webview

Android load a url to the webview that starts with double slash "//"

我正在尝试将 YouTube 视频加载到网络视图中。视频的嵌入 link 如下所示:

//www.youtube.com/embed/sLnBwfWvgpU

如果我不做任何额外的事情而只是尝试加载它,则该视频不会出现在网络视图中。我尝试执行以下操作:

private class CustomWebViewClient extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        String url_string = url;
        if(url_string.startsWith("//")){
            url_string = url_string.substring(2);
            if(!url_string.contains("http")){
                url_string = "http://" + url_string;
            }
        }
        webview.loadUrl(url_string);
        return true;
    }
}

但这也没有用。我的网络视图中有除此视频以外的更多内容,如果我这样做,则不会加载任何内容,当前内容也会消失。那么,我能做些什么呢?

谢谢

你应该设置 javascript;

请在您的代码中尝试 ;

private class CustomWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
    String url_string = url;
    if(url_string.startsWith("//")){
        url_string = url_string.substring(2);
        if(!url_string.contains("http")){
            url_string = "http://" + url_string;
        }
    }
    webview.getSettings().setJavaScriptEnabled(true);
    webview.loadUrl(url_string);
    return true;
}
}

在我的代码中;

    setContentView(R.layout.activity_main);
    wb=(WebView)findViewById(R.id.webView1);
    String url_string = "//www.youtube.com/embed/sLnBwfWvgpU";
    if(url_string.startsWith("//")){
        url_string = url_string.substring(2);
        if(!url_string.contains("http")){
            url_string = "http://" + url_string;
        }
    }
    wb.getSettings().setJavaScriptEnabled(true);
    wb.loadUrl(url_string);