首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在WebView中从页面打开外部浏览器链接

在WebView中从页面打开外部浏览器链接
EN

Stack Overflow用户
提问于 2019-10-13 06:14:16
回答 1查看 3.5K关注 0票数 3

我正在开发一个角度网站,它正在从WebView加载一个应用程序,其中只有一个链接必须在应用程序(外部浏览器)之外打开。

我需要一种方法来处理这个从JavaScript,而不是额外的工作,安卓方面。我已经尝试过一些方法,包括:

window.open("url","_system")

(navigator as any).app.loadUrl("http://google.com", {openExternal : true});

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-08 09:38:40

好吧,没有这样的事情

相反,它必须通过android应用程序代码来处理。当需要在外部浏览器中打开url时,您可以向url添加一个参数(这里是external=true ),然后在加载的webview url中检查该参数,如下所示:

代码语言:javascript
复制
        webView.setWebViewClient(new WebViewClient(){
            @RequiresApi(api = Build.VERSION_CODES.N)
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
                if((String.valueOf(request.getUrl())).contains("external=true")) {
                    Intent intent = new Intent(Intent.ACTION_VIEW, request.getUrl());
                    view.getContext().startActivity(intent);
                    return true;
                } else {
                    view.loadUrl(String.valueOf(request.getUrl()));
                }

                return true;
            }
        }); 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58361041

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档