我正在开发一个角度网站,它正在从WebView加载一个应用程序,其中只有一个链接必须在应用程序(外部浏览器)之外打开。
我需要一种方法来处理这个从JavaScript,而不是额外的工作,安卓方面。我已经尝试过一些方法,包括:
window.open("url","_system")
(navigator as any).app.loadUrl("http://google.com", {openExternal : true});
发布于 2019-12-08 09:38:40
好吧,没有这样的事情
相反,它必须通过android应用程序代码来处理。当需要在外部浏览器中打开url时,您可以向url添加一个参数(这里是external=true ),然后在加载的webview url中检查该参数,如下所示:
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;
}
}); https://stackoverflow.com/questions/58361041
复制相似问题