Android开发页面重定向导致WebvView.canGoBack一直返回true的解决方法

Android开发页面重定向导致WebvView.canGoBack一直返回true的解决方法
  1. 原因:打开页面A的时候重定向到页面B,页面B回退的时候回退到页面A,但是接着又重定向到页面B,所以canGoBack一直返回true,导致一直无法退出。

  2. 解决方法:

    webView.setWebViewClient(new WebViewClient(){
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
        	//返回true表示取消加载,false表示让系统帮我们加载
        	//不要返回true然后自己调用webview.loadUrl(url),这样会导致重定向的页面canGoBack有问题
            return !canOpenWithWebView(url);	
        }
    });
    private boolean canOpenWithWebView(String url) {//处理判断url的合法性
    	if (url != null) {
    		if (url.startsWith("http:") || url.startsWith("https:")) {
    			return true;
    		}
    	}
        return false;
    }
    
posted @   yongfengnice  阅读(743)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示